900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > java链接mysql mvc_MVC jsp+servlet+javabean 连接Mysql数据库測试demo

java链接mysql mvc_MVC jsp+servlet+javabean 连接Mysql数据库測试demo

时间:2024-01-23 05:17:37

相关推荐

java链接mysql mvc_MVC jsp+servlet+javabean 连接Mysql数据库測试demo

首先我们应该了解什么是MVC:

MVC包含三个部分 :

①View:由各种JSP页面组成。

②Controller:由各种Servlet组成,Controller就是将View和Model来进行匹配,用什么Model实现,调用哪个View来显示。

③Model:由各种javabean组成,也是MVC的核心,

以下就是简单的用MVC架构去实现一个JSP(View)+Servlet(Controller)+javabean(Model)实现MySql查询功能的Demo。

创建Web Project

1.打开MyEclipse -> File-> new -> Web Project 创建完后在src下创建包beans和ServletDB最后得到例如以下的文件结构:

2.编写beans

在beans包下创建两个javabeans分别为DAL.java 和 DB.java

DB.java 注意MySqlusername和password是你本机MySql的 username和password与下面的代码可能不一样须要改动。

package beans;

import java.sql.*;

public class DB {

static String driver = "com.mysql.jdbc.Driver";

static String url = "jdbc:mysql://127.0.0.1:3306/test";

static String user = "root";//连接时的username

static String password = "root";//连接时的密码

static Connection aConnection;

public static Connection connectDB(){

try{

Class.forName(driver);

aConnection = DriverManager.getConnection(url,user,password);

if(aConnection.isClosed())

{

System.out.print("Succeeded!");

}

}catch(ClassNotFoundException e){

System.out.println(e);

} catch (SQLException e) {

e.printStackTrace();

}

return aConnection;

}

public static ResultSet executeQuery(String sqlx) throws SQLException{

connectDB();

ResultSet rs = null;

Statement stmt = aConnection.createStatement();

try {

rs = stmt.executeQuery(sqlx);

} catch (SQLException e) {

e.printStackTrace();

}

return rs;

}

}

DAL.java

package beans;

import java.sql.ResultSet;

import java.sql.SQLException;

public class DAL {

public static String sqlx="";

public static String testQueryByID(String ID){

ResultSet rs = null;

String result = "";

sqlx = "SELECT * FROM testtable where ID = '"+ID+"'";

try {

rs = DB.executeQuery(sqlx);

} catch (SQLException e) {

e.printStackTrace();

}

try {

while(rs.next()){

result = result +"ID:"+rs.getString("ID")+" Name:"+rs.getString("name")+"";

}

} catch (SQLException e) {

e.printStackTrace();

}

return result;

}

}

3.编写servlet

File-> new -> servlet->确定包名为servletDB然后取名为test即可了 重要的是在本test方法中增加调用beans方法的语句。

test.java

package servletDB;

import java.io.IOException;

import java.io.PrintWriter;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import beans.DAL;public classtest extends HttpServlet {/**

* Constructor of the object.*/

publictest() {

super();

}/**

* Destruction of the servlet.

*/

public voiddestroy() {

super.destroy();//Just puts "destroy" string in log//Put your code here

}public voiddoGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

response.setContentType("text/html");

String ID= request.getParameter("ID");//获取传过来的ID

String result = "";

result= DAL.testQueryByID(ID);//调用DAL中的testQueryByID方法而且将get过来的ID传过去

PrintWriter out =response.getWriter();out.println(""-//W3C//DTD HTML 4.01 Transitional//EN\">");out.println("");out.println("

A Servlet");out.println("");out.print(result);out.println("");out.println("");out.flush();out.close();

}public voiddoPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

response.setContentType("text/html");

PrintWriterout =response.getWriter();out.println(""-//W3C//DTD HTML 4.01 Transitional//EN\">");out.println("");out.println("

A Servlet");out.println("");out.print("This is");out.print(this.getClass());out.println(", using the POST method");out.println("");out.println("");out.flush();out.close();

}public voidinit() throws ServletException {//Put your code here

}

}

4.配置Servlet

进入WebRoot-〉Web-INF -〉web.xml加入例如以下代码

test

servletDB.test

test

/servletDB/test

写index.jsp

将body中的代码替换为例如以下代码

请输入用户ID:

測试

1.点击Run

2.输入測试ID 1

成功的获取到了test数据库testtable中ID为1的数据。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。