❶ servlet是怎么导入数据到mysql数据库的挺急的。
你好,很高兴解答你的问题。
报错的原因是因为下图中用红框框起来的那个语句。这里不应该使用executeQuery方法。从方法名可以看出大概,这个方法是用来执行查询语句的,非查询(select)语句是不可以执行的。但是此处却执行了一个insert语句。所以就报错了。
这里可以换成使用excute方法。
如果有帮助到你,请点击采纳。
我解答的大部分是软件开发新人遇到的问题,如果有兴趣,可以关注我。
❷ 怎么用Servlet连接mysql数据库 给个例题
package com.jsp.Database;
import java.sql.*;
import javax.sql.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import com.microsoft.jdbc.sqlserver.SQLServerDriver;
public class JDBCServlet extends HttpServlet
{
/* 连接数据库属性*/
String driver;
String password,url,user;
/*处理doGet */
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws IOException,ServletException
{
response.setContentType("text/html;charset=gb2312");
PrintWriter out=response.getWriter();
try
{
Connection con=getConnection();
Statement stmt=con.createStatement();
ResultSet rst=stmt.executeQuery("select * from user_info");
while(rst.next())
{
out.println(rst.getString("userid"));
out.println("<br>");
}
rst.close();
stmt.close();
con.close();
}
catch(SQLException e)
{
e.printStackTrace();
}
}
/*处理doPost请求*/
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws IOException,ServletException
{
doGet(request,response);
}
public void init()throws ServletException
{
driver=getInitParameter("DRIVER");
password=getInitParameter("PASSWORD");
url=getInitParameter("URL");
user=getInitParameter("USER");
}
private Connection getConnection()
{
Connection con=null;
try
{
Class.forName(driver);
con=DriverManager.getConnection(url,user,password);
}
catch(Exception e )
{
e.printStackTrace();
}
return con;
}
}
======== web.xml文件配置========
<servlet>
<servlet-name>JDBCServlet</servlet-name>
<servlet-class>com.jsp.Database.JDBCServlet</servlet-class>
<init-param>
<param-name>DRIVER</param-name>
<param-value>com.microsoft.jdbc.sqlserver.SQLServerDriver</param-value>
</init-param>
<init-param>
<param-name>URL</param-name>
<param-value>jdbc:jdbc:mysql://127.0.0.1:3306/数据库名</param-value>
</init-param>
<init-param>
<param-name>USER</param-name>
<param-value>用户名</param-value>
</init-param>
<init-param>
<param-name>PASSWORD</param-name>
<param-value>密码</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>JDBCServlet</servlet-name>
<url-pattern>/init_servlet</url-pattern>
</servlet-mapping>
WEB.XML在你的tomcat/webapp/你的目录/WEB-INF/下..
或者复制tomcat/webapp/ROOT/WEB-INF/下的,,做一下修改就行了.
❸ 为什么我的servlet连接mysql数据库时,总发生以下错误(我用的是tomcat服务器):
推测原因:
1、数据库没有打开,解决方法:打开服务器;
2、驱动包没有加进去,解决办法:下载mysql驱动包->项目->右击->properties->java build path->libraries-> add external jars(这是在myeclipse下的流程,如果你用的是其他的IDE你再网络一下);
3、连接字符串写错,解决办法:仔细检查你的URL是否正确。
❹ 用servlet收集表单数据,然后怎么将收集到的数据插入到数据库中
//得到表单中的数据String userName=request.getParameter("username");String pwd=request.getParameter("password");//将收集到得数据插入到数据库中String sql="insert into 表名 values ('uerName','pwd')";//插入语句具体执行过程。public static void main(String[] args) {
Connection con=null;
Statement stmt=null;
try{
//1.加载驱动
String driverName="com.mysql.jdbc.Driver";
Class.forName(driverName);
/**
* Driver d=new com.mysql.jdbc.Driver();
DriverManager.registerDriver(d);
除非不会自动注册,采用此代码,因此在这个地方不用此代码
*/
//2.创建数据库连接(mysql数据库)
String url="jdbc:mysql://127.0.0.1:3306/数据库名";
String username="root";//database name
String password="root";//database name
con = DriverManager.getConnection(url,username,password);
//3.获取Statement对象【获取数据库操作对象】
stmt=con.createStatement();
try{ sql="insert into test values("+"'"+userName+"',"+"'"+pwd+"')";
stmt.executeUpdate(sql);
}catch(Exception e){
e.printStackTrace();
}
}catch(Exception e){
e.printStackTrace();
}finally{
try{
stmt.close();
con.close();
}catch(Exception e1){e1.printStackTrace();}
}
} 最好的建议是可以吧要出入的数据进行封装,然后以对象的形式进行操作。可以用hibernate
❺ java web中servlet类中连接数据库问题
<body>
<form action="servlet/Login" method="post">
用户名:<input type="text" name="username"> <br/>
密 码 :<input type="keyword" name="keyword"><br/>
学 号:<input type="num" name="num"><br/>
<input type="submit" value="注册">
</form>
</body>
下面是获取表单信息,并保存到数据库中的servlet,注意获取信息时名字要和jsp提交的信息一致,
response.setContentType("text/html;charset=UTF-8");
//获取输入信息
String member = request.getParameter("username");
String keyword = request.getParameter("keyword");
String num = request.getParameter("num");
//连接数据库
String url = "jdbc:mysql://localhost:3306/thecheck";
String user="root";
String password = "19960104";
try {
Class.forName("com.mysql.jdbc.Driver");
try {
java.sql.Connection conn = DriverManager.getConnection(url, user, password);
java.sql.Statement st = conn.createStatement();
String sql = "insert into student values("+"'"+member+"',"+"'"+keyword+"',"+"'"+num+"',"+"0)";
//System.out.println(sql);
st.executeUpdate(sql);
} catch (SQLException e) {
e.printStackTrace();
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
其中还要注意的是写的输入语句要和数据库中的sql语句对应,否则也会出现错误。
❻ java怎么通过servlet获取from的传值查询mysql数据库对应表的数据并显示到jsp页面中
request.getSession().setAttribute("cid",id);
//这样在后面就可以通过session.getAttribute("cid")来获取,望采纳
❼ 关于eclipse中servlet通过jdbc连接mysql数据库问题。
把 context,rs,conn 分别System.ou.println();一下看是那个出现空指针异常,然后再看那个方法出现这个mull!
根据你以上的代码,只能说这么多啦!
❽ servlet 连接MySQL数据库乱码问题
没看到你怎么存的,
先在你的连接串后面加上 encoding=utf8看看得不得
不行,去看看你的mysql.ini里面看看,数据库 是什么编码的
我猜有可能是你存的时候用的UTF-8,然后读出来了就用的GBK
我这干脆你的程序都改成UTF-8看看
❾ servlet mysql数据库菜鸟问题
你写的类不是已经读了吗
<%=getlessonById(ID)%>
把这句写在表单里显示