JSP實現HTML網頁對Mysql資料庫的資料修改
阿新 • • 發佈:2019-02-20
<%
request.setCharacterEncoding("utf-8");
String msg="";
String msg1="";
boolean error=false;
獲取網址中傳遞的Id
String origId = request.getParameter("pid");
String value1 = null;
String value2 = null;
String value3 = null;
try{
String connectString = "jdbc:mysql://localhost/test"
+ "?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8" ;
String user = "root";
String pwd = "mysql";
String sql = "select *from stu where id = '" + origId + "';";
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(connectString, user, pwd);
Statement state = conn.createStatement();
將原始Id中的資料寫入到當前的HTML中
ResultSet rs = state.executeQuery(sql);
while (rs.next()){ 注意rs是空指標,要使用rs.next才能訪問到數值
value1 = rs.getString("id");
value2 = rs.getString("name");
value3 = rs.getString("age");
}
rs.close();
state.close();
conn.close();
}catch (Exception e){
e.printStackTrace();
}
String s1 = request.getParameter("sub" );
if(s1!=null){
String Id = "";
String Name = "";
String Age = "";
String Grade = "";
String Hobby[]= {""};
String Hobbies = "";
for(int j = 0 ; j < 1 ; j++){
Id = "";
Name = "";
Age = "";
Grade = "";
Hobbies = "";
if(request.getParameter("Id")!=null){
Id = request.getParameter("Id");
if(Id == ""){
error = true;
msg = "ID cant be empty!";
break;
}
if(!Id.equals(origId)){
error = true;
msg = "ID cant be changed!";
break;
}
}
if(request.getParameter("Name")!=null){
Name = request.getParameter("Name");
if(Name == ""){
error = true;
msg = "Name cant be empty!";
break;
}
}
if(request.getParameter("Age")!=null){
Age = request.getParameter("Age");
if(Age == ""){
error = true;
msg = "Age cant be empty!";
break;
}
}
if(request.getParameter("Grade")!=null){
Grade = request.getParameter("Grade");
if(Grade == ""){
error = true;
msg = "Grade cant be empty!";
break;
}
}
if(request.getParameter("Hobby")!=null){
Hobby = request.getParameterValues("Hobby");
int len = Hobby.length;
for(int i = 0 ; i < len ; i++){
if(i==0){
if(len==1){
Hobbies = Hobby[0];
}else{
Hobbies = Hobbies + Hobby[i] + "+";
}
}else if(i == (len-1)){
Hobbies = Hobbies + Hobby[i];
}else{
Hobbies = Hobbies + Hobby[i] + "+";
}
}
}
if(Hobbies == ""){
error = true;
msg = "Hobby cant be empty!";
break;
}
}
對資料庫進行修改
if(!error){
try{
String connectString = "jdbc:mysql://localhost/test"
+ "?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8";
String user = "root";
String pwd = "mysql";
String sql = null;
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(connectString, user, pwd);
Statement state = conn.createStatement();
sql = "update stu set name = '" + Name + "', age = '" + Age + "', grade = '" +
Grade + "', hobby = '" + Hobbies +"';";
if(Hobbies==""){
msg1 = "yes";
}else{
msg1 = "no";
}
int cnt = state.executeUpdate(sql);
if(cnt > 0){
msg = "Update success!";
}else{
msg = "Add Error!";
}
state.close();
conn.close();
}catch (Exception e){
e.printStackTrace();
}
}
if(msg == "Update success!"){
value1 = Id;
value2 = Name;
value3 = Age;
}
}
%>