JavaWeb开发---MVC案例之查询

现在Javaweb开发第一阶段学习步入实践阶段,在这儿将自己做的项目记下来,也方便积累经验。

下图是处理流程:

MySQL数据库表如下所示:

1.在web项目webContent中新建test.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>

<a href="listAllStudentsServlet">List All Students</a>

</body>
</html>

2在Java-src中新建ListAllStudentServlet.java,并对其进行配置

package com.javaweb.mvc;

import java.io.IOException;
import java.util.Arrays;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class ListAllStudentsServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
       
        StudentDao studentDao = new StudentDao();
        List<Student> students = studentDao.getAll();
       
        request.setAttribute("students", students);
        request.getRequestDispatcher("/students.jsp").forward(request, response);
       
       
    }

}

3.继续创建Student.java

package com.javaweb.mvc;

public class Student {
    private Integer id;
    private String studentName;
    private String location;
    private String telephone;
   
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getStudentName() {
        return studentName;
    }
    public void setStudentName(String studentName) {
        this.studentName = studentName;
    }
    public String getLocation() {
        return location;
    }
    public void setLocation(String location) {
        this.location = location;
    }
    public String getTelephone() {
        return telephone;
    }
    public void setTelephone(String telephone) {
        this.telephone = telephone;
    }
    public Student(Integer id, String studentName, String location, String telephone) {
        super();
        this.id = id;
        this.studentName = studentName;
        this.location = location;
        this.telephone = telephone;
    }

}

4.创建StudentDao.java

package com.javaweb.mvc;

import java.util.ArrayList;
import java.util.List;
import java.sql.*;

public class StudentDao {
   
    public List<Student> getAll(){
        List<Student> students = new ArrayList<Student>();
        Connection conn = null;
        PreparedStatement ps = null;
        ResultSet rs = null;
       
        try {
           
                Class.forName("com.mysql.jdbc.Driver");
           
            String url = "jdbc:mysql://localhost:3306/student?user=root&password=1234";
            String user = "root";
            String password = "1234";
            String sql = "select * from stu";
            conn = DriverManager.getConnection(url, user, password);
            ps = conn.prepareStatement(sql);
            rs = ps.executeQuery();
            while(rs.next()){
                int id = rs.getInt(1);
                String studentName = rs.getString(2);
                String location = rs.getString(3);
                String telephone = rs.getString(4);
               
                Student student = new Student(id, studentName, location, telephone);
               
                students.add(student);
            }
           
        }catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally{
            try {
                if(rs != null)
                    rs.close();
                if(ps != null)
                    ps.close();
                if(conn != null)
                    conn.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
       
        return students;
    }

}

5.在webContent中新建students.jsp

<%-- 显示学生信息 --%>
<%@page import="java.util.List"%>
<%@page import="com.javaweb.mvc.Student" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>

<%
        List<Student> students = (List<Student>)request.getAttribute("students");
       
    %>
    <table>
        <tr>
            <th>id</th>
            <th>studentName</th>
            <th>location</th>
            <th>telephone</th>
        </tr>
       
        <%
            for(Student student:students){
        %>
            <tr>
                <td><%= student.getId() %></td>
                <td><%= student.getStudentName() %></td>
                <td><%= student.getLocation() %></td>
                <td><%= student.getTelephone() %></td>
            </tr>
        <%
            }
        %>
       
    </table>

</body>
</html>

6.添加JDBC驱动

添加在lib文件夹,因为lib文件夹中存放支持web应用运行的JAR文件

7.接下来就可以运行了

这是运行结果:

JavaWeb

时间: 2025-01-01 16:44:07

JavaWeb开发---MVC案例之查询的相关文章

【JavaWeb】MVC案例之新闻列表

MVC案例之新闻列表 作者:白宁超 2016年6月6日15:26:30 摘要:本文主要针对javaweb基本开发之MVC案例的简单操作,里面涉及mysql数据库及表的创建,以及jsp页面和servlet的操作,整个操作流程进行梳理.其中涉及的概念问题,不在一一详述.对于整个操作流程按照开发顺序创建.(本文原创,转载标明出处:MVC案例之新闻列表). 实验准备: 1  win*系统,一般配置笔记本或者台式机 2  安装MyEclipse开发平台,本实验使用MyEclipse2015(点击下载) 3

JavaWeb之MVC设计模式

时间:2016-11-26 16:22 --MVC MVC模式(Model - View - Controller)是软件工程中的一种架构模式,把软件系统分为三个基本部分:        模型(Model).视图(View).控制器(Controller) MVC模式最早为Trygve Reenskaug提出,为施乐帕罗奥多研究中心(Xerox PARC)的Smalltalk语言发明的一种软件设计模式. MVC对程序的后期维护和扩展提供了方便,并且使程序某些部分的重用提供了方便,而且MVC也使程

李兴华JavaWeb开发笔记

李兴华JavaWeb开发笔记 1.Java语法-基础 环境变量-JAVA_HOME, PATH, ClassPath 变量名 作用 举例 JAVA_HOME 指向JDK目录 C:\Program Files\Java\jdk1.7.0_21 PATH 指向java.exe目录. %JAVA_HOME%\bin; %JAVA_HOME%\jre\bin CLASSPATH 执行.jar文件.zip文件..class文件所在目录. (程序要用到哪些.class文件,) %JAVA_HOME%\lib

JavaWeb学习总结(一)——JavaWeb开发入门

一.基本概念 1.1.WEB开发的相关知识 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资源分为: 静态web资源(如html 页面):指web页面中供人们浏览的数据始终是不变. 动态web资源:指web页面中供人们浏览的数据是由程序产生的,不同时间点访问web页面看到的内容各不相同. 静态web资源开发技术:Html 常用动态web资源开发技术:JSP/Servlet.ASP.PHP等 在Java中,动态web

个人对JavaWeb中MVC与三层架构的区别理解

JavaWeb中MVC是指B/S结构开发中的一种设计模式,能够将Web页面与业务逻辑以及数据库操作之间的耦合性降到最低点,易于代码的重用以及后期维护.而三层架构的概念在JavaWeb中则是指Web层,业务层,数据层.但三层架构中却是把MVC中的Model,也就是JavaBeans分成业务层和数据层,而把Controller控制器以及View视图合并成Web层.二者之间最大的区别在于MVC只限于JavaWeb,而三层架构则能够实现在非Web应用平台之上,只需替换掉Web层足以,而业务层与数据层依旧

CodeIgniter开发实际案例-新闻网站【转】

CodeIgniter开发实际案例-新闻网站 转:http://blog.csdn.net/ict2014/article/details/22104711?utm_source=tuicool&utm_medium=referral 标签: codeigniter新闻框架示例 2014-03-25 22:53 1015人阅读 评论(0) 收藏 举报  分类: Code Igniter(3)  版权声明:本文为博主原创文章,未经博主允许不得转载. 1.建立数据库 运用Navicat For My

JavaWeb学习总结(一)——JavaWeb开发入门(转载)

一.基本概念 1.1.WEB开发的相关知识 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资源分为: 静态web资源(如html 页面):指web页面中供人们浏览的数据始终是不变. 动态web资源:指web页面中供人们浏览的数据是由程序产生的,不同时间点访问web页面看到的内容各不相同. 静态web资源开发技术:Html 常用动态web资源开发技术:JSP/Servlet.ASP.PHP等 在Java中,动态web

JavaWeb学习(一)---JavaWeb开发入门

本文整理自孤傲苍狼大大的博客,,, 一.基本概念 1.1.WEB开发的相关知识 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资源分为: 静态web资源(如html 页面):指web页面中供人们浏览的数据始终是不变. 动态web资源:指web页面中供人们浏览的数据是由程序产生的,不同时间点访问web页面看到的内容各不相同. 静态web资源开发技术:Html 常用动态web资源开发技术:JSP/Servlet.ASP

JavaWeb学习总结(一)——JavaWeb开发入门(转载)

转载自http://www.cnblogs.com/xdp-gacl/p/3729033.html感谢孤傲苍狼的分享. 一.基本概念 1.1.WEB开发的相关知识 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资源分为: 静态web资源(如html 页面):指web页面中供人们浏览的数据始终是不变. 动态web资源:指web页面中供人们浏览的数据是由程序产生的,不同时间点访问web页面看到的内容各不相同. 静态we