对用jndi的方法不是很熟悉.
不能帮你解决问题.
Connection为空.
你还是改进改进获取数据源的算法.
不能帮你解决问题.
Connection为空.
你还是改进改进获取数据源的算法.
解决方案 »
- 紧急求助! 各位大神帮帮忙啊 CCRC相关
- 求java web开发学习步骤及相关资料
- applet挡住了jsp中的document.onclick
- 请问指定触发类名称和触发类方法名称,怎么写一个方法去触发它
- mysql的可视话工具sqlyog的乱码问题
- 把HTML无嵌套的表格完美导出为Excel文件的方法(扩展为使用模板页面)
- 高分求解:在apllet如何访问asp请求页(与applet来源于同一服务器),并取回查询数据?
- 关于时间24进制,搜索了,但是好像没人碰到这个问题
- 如何把Tomcat 和 Apache 联系起来
- 请问如何用velocity 表单提交数据到spring的控制器,控制器又如何接收数据呢?
- 请问,利用JSP如何对数组进行升序排列?
- executeUpdate(sql)这个语句执行了但是数据没有写入数据库????
if(ctx == null )
throw new Exception("No Context"); DataSource ds =
(DataSource)ctx.lookup(
"java:comp/env/jdbc/mysql");
if(ds==null)
throw new Exception("No DataSource");
跟踪一下,看看哪一步是空值。
我怀疑是你的配置文件可能有问题。
不同的Server Lookup的方法是有点区别的。
改成这个
try {
Context initCtx=new javax.naming.InitialContext();
if(initCtx == null )
throw new Exception("No Context");
Context envCtx=(Context)initCtx.lookup("java:comp/env");
DataSource ds=(DataSource)envCtx.lookup("jdbc/mysql");
if(ds==null)
throw new Exception("No DataSource");}
catch(Exception e){}
可还是一样的错啊, szabo(阿波哥)朋友说的是什么意思啊
建议,将strSQL赋值为:String strSQL="insert into user(userid,password) values('guest','111111')";
然后看看报错是否一样,如果还是一样抱错报错,我再想想,
String strSQL="insert into user(userid,password) values('"+userid+"','"+password+"')";
你看我这样就没有错,你试一试在JDK下面运行一下
import java.sql.*;
import javax.naming.*;
import javax.sql.*;
import java.util.*;public class Bbsreg {
private String dbUrl = "jdbc:mysql://localhost:3306/BookDB";
private String dbUser="dbuser";
private String dbPwd="1234";
ResultSet rs = null;
public Bbsreg ()
{
try
{
Class.forName("com.mysql.jdbc.Driver");
}
catch (Exception ex)
{
}
}
public ResultSet executeQuery(String sql)
{
rs = null;
try
{
Connection conn = DriverManager.getConnection(dbUrl,dbUser,dbPwd);
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
}
catch(Exception ex)
{
System.err.println("aq.executeQuery: " + ex.getMessage());
System.err.println("aq.executeQuerystrSQL: " + sql);
}
return rs;
}
//更改数据
public void executeUpdate(String sql)
{
try
{
Connection conn = DriverManager.getConnection(dbUrl,dbUser,dbPwd);
Statement stmt = conn.createStatement();
stmt.executeUpdate(sql);
}
catch(Exception ex)
{
System.err.println("aq.executeUpdate: " + ex.getMessage());
System.err.println("aq.executeUpadatestrSQL: " + sql);
}
}
public static void main(String[] args) throws Exception
{
String userid="aaa";
String password="123456";
Bbsreg dbconn=new Bbsreg();
String strSQL="insert into user(userid,password) values('"+userid+"','"+password+"')";
dbconn.executeUpdate(strSQL);
System.out.println(" 注册成功 ");
}
}