- model2是由JSP+Servlet+JavaBean一起实现的,由jsp负责页面,JavaBean用于存储数据,Servlet处在jsp和JavaBean中间,负责调用JavaBean的存储方法将JSP传来的数据存储到数据库中。
- 这里要说以下MVC原理。
- M model模型层,这是应用程序的核心部分,主要由JavaBean充当。可以是一个实体对象或者一种业务逻辑。
- V view视图层 提供与用户交互的界面,但是不包含任何的业务逻辑,只是将数据传递给Controller
- C Controller控制层 三层中的大佬,获取视图层的数据并且把他交由模型层处理。
- 简单实现例子
- 数据库
create table tb_goods -> (name varchar(45), -> price double, -> description varchar(100) -> );
- 贴心提醒文件的位置
- 数据库
- web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> <servlet> <servlet-name>GoodsServlet</servlet-name> <servlet-class>GoodsServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>GoodsServlet</servlet-name> <url-pattern>/GoodsServlet</url-pattern> </servlet-mapping> </web-app>
-
视图层(index.jsp)
<%-- Created by IntelliJ IDEA. User: 11955 Date: 2018/10/20 Time: 9:33 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>$Title$</title> </head> <body> <form action="GoodsServlet" method="post" onsubmit="return save(this);"> <table border="1" align="center" width="300"> <tr> <td align="right">商品名称</td> <td> <input type="text" name="name"> </td> </tr> <tr> <td align="right">价格</td> <td> <input type="text" name="price"> </td> </tr> <tr> <td align="right">商品描述</td> <td> <textarea name="description" cols="30" rows="3"></textarea> </td> </tr> <tr> <td align="center" colspan="2"> <input type="submit" value="ok"> <input type="reset" value="reset"> </td> </tr> </table> </form> </body> </html>
-
控制层,也就是servlet
import com.model.Goods; import com.model.GoodsDao; 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; import java.io.PrintWriter; @WebServlet(name = "GoodsServlet") public class GoodsServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); response.setCharacterEncoding("utf-8"); request.setCharacterEncoding("utf-8"); PrintWriter out = response.getWriter(); String name = request.getParameter("name"); String price = request.getParameter("price"); String description = request.getParameter("description"); Goods goods = new Goods(); goods.setName(name); goods.setPrice(Double.valueOf(price)); goods.setDescription(description); GoodsDao goodsDao = new GoodsDao(); goodsDao.saveGoods(goods); out.print("ok"); out.flush(); out.close(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } }
-
模型层,两个JavaBean
/** * Demo Goods * * @author linMinRui * @date 2016/10/20 */ package com.model; public class Goods { private String name; private double price; private String description; public String getName() { return name; } public void setName(String name) { this.name = name; } public double getPrice() { return price; } public void setPrice(double proice) { this.price = proice; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } }
/** * Demo Goods * * @author GoodsDao * @date 2016/10/20 */ package com.model; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; public class GoodsDao { public void saveGoods(Goods goods){ try{ Class.forName("com.mysql.jdbc.Driver"); String url = "jdbc:mysql://localhost:3306/test"; Connection conn = DriverManager.getConnection(url, "root", "123456"); String sql = "insert into tb_goods(name, price, description) values(?,?,?)"; PreparedStatement ps = conn.prepareStatement(sql); ps.setString(1,goods.getName()); ps.setDouble(2,goods.getPrice()); ps.setString(3,goods.getDescription()); ps.executeUpdate(); ps.close(); conn.close(); }catch (Exception e){ e.printStackTrace(); } } }
-
运行index.jsp输入数据,就可以在数据库中查看到。
model2
猜你喜欢
转载自blog.csdn.net/weixin_39452731/article/details/83210928
今日推荐
周排行