熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> JSP教程 >> 正文

jsp連接MySQL實現插入insert操作功能示例

2013-11-15 12:16:39  來源: JSP教程 
本文將為大家展示下jsp連接MySQL執行插入操作的功能具體的示例及代碼如下感興趣的朋友可以了解下  

  下午終於實現了jsp連接MySQL執行插入操作的功能在indexjsp頁面輸入數據提交到mysql——insertjsp頁面進行插入數據庫的操作
jsp連接MySQL實現插入insert操作功能示例  
indexjsp頁面代碼如下

復制代碼 代碼如下:
<%@ page language="java" pageEncoding="utf"%>
<%@ page contentType="text/html;charset=utf"%> 
<% 
   requestsetCharacterEncoding("UTF"); 
   responsesetCharacterEncoding("UTF"); 
   responsesetContentType("text/html; charset=utf"); 
%> 
<html>
<head>
</head>
<body>
<form action="mysql_insertjsp" method="post">
ID :<input type = "text" name="id" value=""/>
姓名 :<input type = "text" name="name" value="aaa"/>
性別 :<input type = "text" name="sex" value="female"/>
年齡 :<input type = "text" name="age" value=""/>
</br>
<input type = "submit" value="提交"/>
</form>
</body>
</html>

  
mysql——insertjsp的代碼如下

復制代碼 代碼如下:
<%@ page language="java" import="javautil*javasql*" pageEncoding="utf"%>
<%@ page contentType="text/html;charset=utf"%>
<% 
   requestsetCharacterEncoding("UTF"); 
   responsesetCharacterEncoding("UTF"); 
   responsesetContentType("text/html; charset=utf"); 
%> 
<html>
<head>
<title>add message into table </TITLE>
</head>
<body>
<%
String id=requestgetParameter("id"); //從表單獲得
String name=requestgetParameter("name"); //從表單獲得
String sex=requestgetParameter("sex"); //從表單獲得
String age=requestgetParameter("age"); //從表單獲得

javautilDate date=new javautilDate();
String datetime=new Timestamp(dategetTime())toString();
try
{
/** 連接數據庫參數 **/
String driverName = "commysqljdbcDriver"; //驅動名稱
String DBUser = "root"; //mysql用戶名
String DBPasswd = ""; //mysql密碼
String DBName = "html_db"; //數據庫名

String connUrl = "jdbc:mysql://localhost/" + DBName + "?user=" + DBUser + "&password=" + DBPasswd;
ClassforName(driverName)newInstance();
Connection conn = DriverManagergetConnection(connUrl);
Statement stmt = conncreateStatement();
stmtexecuteQuery("SET NAMES UTF");
String insert_sql = "insert into person_tb values(" + id + "" + name + "" + sex + "" + age + ")";
String query_sql = "select * from person_tb";

try {
stmtexecute(insert_sql);
}catch(Exception e) {
eprintStackTrace();
}
try {
ResultSet rs = stmtexecuteQuery(query_sql);
while(rsnext()) {
%>
ID<%=rsgetString("id")%> </br>
姓名<%=rsgetString("name")%> </br>
性別<%=rsgetString("sex")%> </br>
年齡<%=rsgetString("age")%> </br> </br>
<%
}
}catch(Exception e) {
eprintStackTrace();
}
//rsclose();
stmtclose();
connclose();
}catch (Exception e) {
eprintStackTrace();
}
%>
</body>
</html>

  
訪問indexjsp後的頁面
 
輸入測試數據提交後得到如下頁面

數據庫的變化情況如下
 
關於jsp連接MySQL數據庫時的亂碼問題
在 輸入數據的頁面的編碼方式要使用GB或者GBK同時在接收數據的頁面的編碼方式要使用UTF才能保證完全不會出現亂碼如上面的例子在 indexjsp輸入數據所以其使用<%@ page contentType="text/html;charset=gb"%>語句指明使用GB編碼而 mysql_insertjsp接收數據所以其使用<%@page language="java" pageEncoding="UTF"%>語句指明使用UTF編碼
而對於從MySQL中拿出數據並顯示的頁面其編碼方式也要 使用GB如下面的mysql_queryjsp文件例子就使用了<%@ page contentType="text/html;charset=gb"%>語句指明了編碼方式
tomcat默認按照iso對url進行編碼所以要進行相應轉換

復制代碼 代碼如下:

  
<%@ page contentType="text/html;charset=gb"%>
<%@ page import="javasql*"%>
<html>
<body>
<%
Connection con=null;
String url="jdbc:mysql://localhost/html_db?user=root&password=&useUnicode=true&characterEncoding=_";
//html_db為數據庫名
ClassforName("orggjtmmmysqlDriver")newInstance();//新建實例
Connection conn= DriverManagergetConnection(url);//建立連接
Statement stmt=conncreateStatement(ResultSetTYPE_SCROLL_SENSITIVEResultSetCONCUR_UPDATABLE);
String sql="select * from person_tb";
ResultSet rs=stmtexecuteQuery(sql);
while(rsnext()) {%>
ID<%=rsgetString("id")%> </br>
姓名<%=rsgetString("name")%> </br>
性別<%=rsgetString("sex")%> </br>
年齡<%=rsgetString("age")%> </br> </br>
<%}%>
<%outprint("數據庫操作成功恭喜你!");%>
<%
rsclose();
stmtclose();
connclose();
%>
</body>
</html>


From:http://tw.wingwit.com/Article/program/Java/JSP/201311/20627.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.