博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MVC jsp+servlet+javabean 连接Mysql数据库測试demo
阅读量:6151 次
发布时间:2019-06-21

本文共 4277 字,大约阅读时间需要 14 分钟。

本文介绍的是怎样使用MVC架构去实现jsp+servlet+javabean连接数据库

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

MVC包含三个部分 :

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

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

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

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

                                                                                                                                                                               

安装好例如以下软件:

1.MySQL

2.MyEclipse

3.下载好MySQL 的JDBC 的连接驱动jar       url:http://pan.baidu.com/s/1sjBCfZR

一、创建数据库。

1.我们使用MySQL中的test数据库来创建须要測试的表:

     在test数据库下创建名字为testTable的表,设置ID为主键,name等属性。点击apply,至此就完毕了数据库的创建。然后给定一些值例如以下4所看到的:

                            

            

                        

                     

                

二、创建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 class test extends HttpServlet {	/**	 * Constructor of the object.	 */	public test() {		super();	}	/**	 * Destruction of the servlet. 
*/ public void destroy() { super.destroy(); // Just puts "destroy" string in log // Put your code here } public void doGet(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(""); out.println(""); out.println(" A Servlet"); out.println(" "); out.print(result); out.println(" "); out.println(""); out.flush(); out.close(); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println(""); 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 void init() throws ServletException { // Put your code here }}
4.配置Servlet

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

test
servletDB.test
test
/servletDB/test
5.加入MySQL的Driver的jar支持

     将下载好的mysql-connector-java-5.1.30-bin.jar 放在好找的地方

     右击项目->Properties->Java Build Path->Libraries->Add  External  选择下载好的jar即可了

        

6.写index.jsp

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

请输入用户ID:

三、測试

1.点击Run

2.输入測试ID 1

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

你可能感兴趣的文章
hdu 4223 Dynamic Programming? (dp)
查看>>
谈谈我对Android View事件分发的理解
查看>>
linux下udev简介【转】
查看>>
keras如何求分类问题中的准确率和召回率
查看>>
C#远程调用技术WebService葵花宝典
查看>>
oracle之 调整 I/O 相关的等待
查看>>
上传指定url文件到阿里云oss
查看>>
ajax 请求数据的两种方法
查看>>
cocos2d JS-(JavaScript) 检测DOM是否可用
查看>>
Jsoup(三)-- Jsoup使用选择器语法查找DOM元素
查看>>
参加IMWebConf 2017 前端开发者大会是什么体验?
查看>>
String.format和MessageFormat.format的对比用法
查看>>
住房资料相关
查看>>
【微信小程序】下拉刷新真机测试无效
查看>>
如何解读「量子计算应对大数据挑战:中国科大首次实现量子机器学习算法」?——是KNN算法吗?...
查看>>
使用优雅方式对参数验证进行处理
查看>>
[转]微信小程序实现图片上传功能
查看>>
机器学习常见算法分类汇总
查看>>
在windows10下搭建ubuntu环境
查看>>
行为型模型 迭代器模式
查看>>