package com.gyx.db;
import com.gyx.bean.Tuser;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class PreparedStatementUserSQL {
public int insertUserTest(Tuser tuser) {
Connection conn = null;
PreparedStatement pstmt = null;
int num = 0;
try {
conn = SQLJDBConnection.getConn();
String sql = "insert tuser(id,name,pwd,sex,age,phone) values(?,?,?,?,?,?);";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tuser.getId());
pstmt.setString(2, tuser.getName());
pstmt.setString(3, tuser.getPwd());
pstmt.setString(4, tuser.getSex());
pstmt.setInt(5, tuser.getAge());
pstmt.setString(6, tuser.getPhone());
num = pstmt.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();}
return num;
}
private void closeAll(Connection conn, PreparedStatement pstmt, Object o) {
}
public int updateTest(Tuser tuser) {
Connection conn = null;
PreparedStatement pstmt = null;
int num = 0;
try
{
conn = SQLJDBConnection.getConn();
String sql = "update tuser set name=?,age=?,where id=?;";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tuser.getName());
pstmt.setInt(2,tuser.getAge());
pstmt.setString(3,tuser.getId());
num =pstmt.executeUpdate();
System.out.println(num);
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return num;
}
public int deleteTest(Tuser tuser){
Connection conn=null;
PreparedStatement pstmt=null;
int num=0;
try{
conn= SQLJDBConnection.getConn();
String sql="delete from tuser where id=?;";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,tuser.getId());
num =pstmt.executeUpdate();
System.out.println(num);
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}finally {
closeAll(conn, pstmt, null); // 釋放資源
}
return num;
}
public ResultSet selectTest(Tuser tuser){
Connection conn= null;
PreparedStatement pstmt =null;
ResultSet resultSet=null;
try{
conn =SQLJDBConnection.getConn();
String sql="select * from tuser where id=?;";
pstmt= conn.prepareStatement(sql);
pstmt.setString(1,tuser.getId());
resultSet =pstmt.executeQuery();
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return resultSet;
}
}
----------------------------------------------------------------------------------
package com.gyx.bean;
public class Tuser {
String id,name,pwd,sex,phone;
int age;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
--------------------------------------------------------------------------------------
package com.gyx.servlet;
import com.gyx.bean.Tuser;
import com.gyx.db.PreparedStatementUserSQL;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet(name = "InsertServlet",value = "/insertuser")
public class InsertServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doGet(request,response);
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Tuser tuser=new Tuser();
tuser.setId(request.getParameter("id"));
tuser.setName(request.getParameter("name"));
tuser.setPwd(request.getParameter("pwd"));
tuser.setSex(request.getParameter("sex"));
PreparedStatementUserSQL ptuser=new PreparedStatementUserSQL();
if(ptuser.insertUserTest(tuser)>0){
response.sendRedirect("success.jsp");
}else{
response.sendRedirect("fail.jsp");
}
}
}
-----------------------------------------------------------------------------------
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>$Title$</title>
</head>
<body>
<form action="insertuser" method="post" name="form1">
ID:<input type="text" name="id"><br/>
姓名:<input type="text" name="name"><br/>
密碼:<input type="text" name="pwd"><br/>
性別:<input type="radio" name="sex" value="https://bbs.csdn.net/topics/M">男
<input type="radio" name="sex" value="https://bbs.csdn.net/topics/F">女<br/>
<input type="submit">
</form>
</body>
</html>
可以運行就是插入不進去資料,之前還能用但是sql server升級后就用不了了求各位幫幫忙
uj5u.com熱心網友回復:
錯誤資訊呢?資料庫升級,可能是資料庫用戶變化,jdbc的jar需要升級
uj5u.com熱心網友回復:
02-Jun-2020 12:38:03.753 資訊 [Catalina-utility-1] org.apache.catalina.startup.HostConfig.deployDirectory 把web 應用程式部署到目錄 [C:\Program Files (x86)\Apache Software Foundation\Tomcat 9.0\webapps\manager]02-Jun-2020 12:38:03.812 資訊 [Catalina-utility-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [C:\Program Files (x86)\Apache Software Foundation\Tomcat 9.0\webapps\manager] has finished in [59] ms
com.microsoft.sqlserver.jdbc.SQLServerException: 列名 'age' 無效。
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:217)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(SQLServerStatement.java:1655)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePreparedStatement(SQLServerPreparedStatement.java:440)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PrepStmtExecCmd.doExecute(SQLServerPreparedStatement.java:385)
at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7505)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:2445)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(SQLServerStatement.java:191)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(SQLServerStatement.java:166)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.executeUpdate(SQLServerPreparedStatement.java:328)
at com.gyx.db.PreparedStatementUserSQL.insertUserTest(PreparedStatementUserSQL.java:25)
at com.gyx.servlet.InsertServlet.doGet(InsertServlet.java:27)
at com.gyx.servlet.InsertServlet.doPost(InsertServlet.java:16)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:660)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:688)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:367)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1639)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
uj5u.com熱心網友回復:
上面的是錯誤資訊轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/59171.html
標籤:Web 開發
