mysql输出到页面MVC模式
阅读原文时间:2023年07月12日阅读:3

上一篇文章我提到过在jsp页面不好

这篇文章讲的就是界面和代码分离,可以初步实现两个或三个人合作完成一个项目

好,废话不多说,进正题

这次又四个步骤

第一步,新建项目,新建实体类

第二步,新建数据库,照着实体类来建数据库

第三步,新建servlet和jsp(这一步顺序不分先后)

第一步,照着图建就好,至于那四个taglibs开头的包,可以到这里看:http://www.cnblogs.com/feathe/p/6946750.html

还有一个jdbc的上一篇文章有下载的详细步骤,这里就不多说了

util那个包是自己封装的(如果自己有改动的话,就用自己的,如果没有就用我这个名字也行)

类名(ConnManager)代码如下:

package util;

import java.sql.Connection;
import java.sql.DriverManager;

public class ConnManager {

//数据库5大参数  
private static final String IP = "127.0.0.1";  
private static final String PORT = "3306";  
private static final String DATABASE\_NAME = "one";  
private static final String USER\_NAME = "root";  
private static final String PASSWORD = "123";  
private static final String DRIVER = "org.gjt.mm.mysql.Driver";

public static Connection getConnection() throws Exception {  
    String url = "jdbc:mysql://"+IP+":"+PORT+"/"+DATABASE\_NAME+"?user="+USER\_NAME+"&password="+PASSWORD+"";  
    Class.forName(DRIVER);  
    Connection conn = DriverManager.getConnection(url);  
    System.out.println("ConnManager已经创建了连接:"+conn);  
    return conn;  
}

}

实体类代码:

类名:Entity.java

package entity;

import java.sql.Date;

public class Entity {
private Integer id;
private String name;
private Date birt;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Date getBirt() {
return birt;
}
public void setBirt(Date birt) {
this.birt = birt;
}

}

建数据库代码(管理员doc界面下操作):

create database one ;

use one

create table inf(id int, nam varchar(20),birt DATE);

insert into inf values('1','一号','2000-1-1'),('2','二号','2000-1-2');

insert into inf values('3','三号','2000-1-3'),('4','四号','2000-1-4');

select * from inf;

新建jsp,代码如下:

jsp名称(Test.jsp)

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>


Insert title here

编号 名字 出生日期
${a.id } ${a.name } ${a.birt }



servlet代码:

名称(Action.java)

package action;

import java.io.IOException;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
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.sql.Connection;
import entity.Entity;
import util.ConnManager;

@WebServlet("/Action")
public class Action extends HttpServlet {
private static final long serialVersionUID = 1L;

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {  
    try{  
    Connection co=ConnManager.getConnection();  
    String sql="select \* from inf ";  
    PreparedStatement pa=co.prepareStatement(sql);  
    ResultSet rs=pa.executeQuery();  
    List<Entity> list =new ArrayList<Entity>();  
    while(rs.next()){  
        Integer id=rs.getInt("id");  
        String name=rs.getString("name");  
        java.sql.Date birt=rs.getDate("birt");

        Entity en=new Entity();  
        en.setId(id);  
        en.setName(name);  
        en.setBirt(birt);  
        list.add(en);  
    }  
    rs.close();  
    pa.close();  
    co.close();  
    request.setAttribute("list", list);  
    request.getRequestDispatcher("Test.jsp").forward(request, response);  
    }catch(Exception e){  
        System.out.println("出现异常"+e.getMessage());//如果报错的话,这行代码就起作用了,记得在控制台那里看一下,会有惊喜的

    }    

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {  
    // TODO Auto-generated method stub  
    doGet(request, response);  
}

}

这就是一个比较完整的项目,接下来就是Run As了,注意     运行的是整个项目,不要运行单独一个jsp或java,这里不要,

如果只是单独写了一个java文件的话,单独运行一个没问题。

效果如下:

在前面我有说到初步团队合作,相信你看到这里,对团队合作完成一个项目心里面有一点思路了。

团队合作必须要有主心骨,主心骨的决定,队友要配合,没有商量。

对于这个项目,我觉得,首先,

队长先定义一些东西,

数据库名称,表名,字段名和类型,数据库用户名,密码,jsp名称,集合名称。

把这些东西定义好,差不多就能自己干自己的那一块,最后整合代码,再跑一遍。这是我片面的理解。

详情如下(老师的提示):

1、首先建模(建立数据库表以及实体类)
2、搞清楚业务流程,谁跳转到谁,多少个页面,多少个类
3、思考好页面跳转时,传递什么数据,显示什么数据等

4、团队开发的话,要有组长分配任务,谁做什么,以及公共约定的变量名需要明确,然后实现同时开发。
5、团队开发过程,要算时间,统计团队力量是否大于个人。

对比一下,我的还是不全面。

好了,文章到这里就结束了,希望对你有帮助。。。