我有一个自己的mySqlConnection 类 代码如下
public class mySqlConnection {
private String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=police"; private String userName = "sa"; private String password = "123456"; static {
try {
// 加载驱动
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); } catch (ClassNotFoundException e) {
e.printStackTrace();
} } public Connection getConnection() throws SQLException {
return DriverManager.getConnection(url, userName, password);
}
}
有个Myreader类 代码如下
public class myReader { private mySqlConnection dbconn;
private Connection conn;
private Statement stmt;
private ResultSet rs;
private String csql;
public myReader( String csql ){
this.csql = csql;
}
public ResultSet loginInfoRead() throws SQLException
{
dbconn= new mySqlConnection();
conn = dbconn.getConnection();
stmt=conn.createStatement();
rs=stmt.executeQuery( csql);
return rs;
}
public void connclose()throws SQLException
{
rs.close();
stmt.close();
conn.close();
System.out.println("all closed ");
}
/* public static void main(String args[]) throws SQLException{
String sql = "select * from Login ";
myReader mreader= new myReader(sql);
ResultSet rs= mreader.loginInfoRead();
while(rs.next()){
System.out.println(rs.getString("PID"));
}
mreader.connclose();
}*/
}
问题来了
我在jsp页面中 <body>
<%
request.setCharacterEncoding("gb2312");
String pid = request.getParameter("PID");
String pstytle = request.getParameter("PStytle");
String msg = "";
String id="332211";
String pwd= "123456";
String sql="select PID from Login where PID =? and PPwd=? ";
String mysql = "select * from Login";
myReader myconn= new myReader(mysql);
ResultSet rs = myconn.loginInfoRead();
while(rs.next())
{%>
<%=rs.getString("PID") %>
<%
}
myconn.connclose();
%>
</body> 这个是可以读取数据库中的信息 并且显示的 但是我在用java application调试时 报错 说是驱动有问题
Exception in thread "main" java.sql.SQLException: No suitable driver
大家帮忙解决下问题
public class mySqlConnection {
private String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=police"; private String userName = "sa"; private String password = "123456"; static {
try {
// 加载驱动
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); } catch (ClassNotFoundException e) {
e.printStackTrace();
} } public Connection getConnection() throws SQLException {
return DriverManager.getConnection(url, userName, password);
}
}
有个Myreader类 代码如下
public class myReader { private mySqlConnection dbconn;
private Connection conn;
private Statement stmt;
private ResultSet rs;
private String csql;
public myReader( String csql ){
this.csql = csql;
}
public ResultSet loginInfoRead() throws SQLException
{
dbconn= new mySqlConnection();
conn = dbconn.getConnection();
stmt=conn.createStatement();
rs=stmt.executeQuery( csql);
return rs;
}
public void connclose()throws SQLException
{
rs.close();
stmt.close();
conn.close();
System.out.println("all closed ");
}
/* public static void main(String args[]) throws SQLException{
String sql = "select * from Login ";
myReader mreader= new myReader(sql);
ResultSet rs= mreader.loginInfoRead();
while(rs.next()){
System.out.println(rs.getString("PID"));
}
mreader.connclose();
}*/
}
问题来了
我在jsp页面中 <body>
<%
request.setCharacterEncoding("gb2312");
String pid = request.getParameter("PID");
String pstytle = request.getParameter("PStytle");
String msg = "";
String id="332211";
String pwd= "123456";
String sql="select PID from Login where PID =? and PPwd=? ";
String mysql = "select * from Login";
myReader myconn= new myReader(mysql);
ResultSet rs = myconn.loginInfoRead();
while(rs.next())
{%>
<%=rs.getString("PID") %>
<%
}
myconn.connclose();
%>
</body> 这个是可以读取数据库中的信息 并且显示的 但是我在用java application调试时 报错 说是驱动有问题
Exception in thread "main" java.sql.SQLException: No suitable driver
大家帮忙解决下问题
解决方案 »
- 有关留言板的问题 急!!!
- 求教:一个jsp问题!
- JavaScript狠的啊快帮帮我吧 谢谢啦
- 为myfaces的tree控件自定义render!急,在线等!!!
- 怎样把890M的JBuilder2007分盘刻录?
- jfreechart中,有多个月,如何把x轴为1-31号,而不是比如2.27,2.28,3.1等等
- 请教:smartupload组件 传值问题 !急急!!
- Win2000/xp Apache2.0.48+Tomcat5.0.19+mysql4.0.18+JDK1.5(1.4)+JSP/servlet整合进阶(三)
- 请问怎样把从数据库获得显示到页面上
- 跪求,我做不出来就毕不了业!!!!!
- log4j 多进程同时写一个log文件,log丢失问题
- 问一个ibatis动态SQL的问题
public class test {
public static void main(String args[]) throws SQLException{
String sql = "select * from Login ";
myReader mreader= new myReader(sql);
ResultSet rs= mreader.loginInfoRead();
while(rs.next()){
System.out.println(rs.getString("PID"));
}
mreader.connclose();
}
}
忘记给java application下的代码了
不知道是连接 sqlserver 还是 mysql?
2.查看connection是否能获取。
3.查看结果集中是否有数据。
4.是否是关闭方法抛出的异常。
你的问题就是老飞方法抛出异常,而不是捕获,这样错误信息提示不明显,不好判断。
try {
// 加载驱动
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
static 是静态方法,它只执行一次,所以你要把加载驱动的方法放到构造函数中,这样每一次实例
化这个类,就加载了驱动.
在该test类中,点击右键->运行方式-》选择运行-》选择类路径标签-》选择用户条目-》添加JAR.呵呵,这样,你再运行这个main,就可以了。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING/DTD BEAN/EN"
"http://www.springframework.org/dtd/spring-beans.dtd"> <beans>
<import resource="classpath:spring_conf/autodao/spring_dao_common.xml" />
<import resource="classpath:spring_conf/autodao/spring_dao_forum.xml" />
<import resource="classpath:spring_conf/manual/spring_dao_common.xml" />
<import resource="classpath:spring_conf/manual/spring_dao_forum.xml" />
<import resource="classpath:spring_conf/spring_quartz.xml" /> <!-- ========================= RESOURCE DEFINITIONS ========================= -->
<bean id="propertyConfigurer" class="com.java91.param.common.SpringPropertyConfigurer">
<property name="locations">
<list>
<value>classpath:db_para.properties</value>
</list>
</property>
</bean> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
<property name="maxIdle" value="50" />
<property name="minIdle" value="20" />
<property name="logAbandoned" value="true" />
<property name="removeAbandoned" value="true" />
<property name="maxWait" value="1000" />
<property name="maxActive" value="500" />
</bean> <!-- Transaction manager for a single JDBC DataSource -->
<!-- (see dataAccessContext-jta.xml for an alternative) -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource">
<ref local="dataSource"/>
</property>
</bean> <bean id="sqlMap" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation">
<value>classpath:daoConfig/sql-map-config.xml</value>
</property>
<property name="dataSource">
<ref local="dataSource"/>
</property>
</bean> <bean id="transactionInterceptor"
class="org.springframework.transaction.interceptor.TransactionInterceptor">
<property name="transactionManager" ref="transactionManager"></property>
<property name="transactionAttributes">
<props>
<prop key="*">PROPAGATION_REQUIRED</prop>
<prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>
</props>
</property>
</bean>
<!--
<bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames">
<value>*Service, *Manage, *Manager</value>
</property>
<property name="interceptorNames">
<list>
<value>transactionInterceptor</value>
</list>
</property>
</bean>--></beans>