【Java Web开发】DAO和VO

  在实际Web开发中,一般将访问数据库的操作放到特定的类,JSP作为表示层,可以在表示层中调用这些类提供的操作数据库的方法。这种Java类叫做DAO(Data Access Object)专门进行数据库的访问,可以使用VO(Value Object)配合DAO来使用。之前的JavaBean对象就可以当作VO。
编写DAO和VO步骤如下
1.pom.xml文件的标签下添加以下代码。

	<dependency>
	    <groupId>com.microsoft.sqlservergroupId>
	    <artifactId>mssql-jdbcartifactId>
	    <version>7.2.1.jre8version>
	dependency>

注意:标签要选择与你的jre版本和sql server版本一致。
如果是传统工程可以参考 Java用JDBC方式连接SQL Server 2017 连接数据库。
2.在src目录下创建一个dao包,在dao包下创建一个AccountDao类
【Java Web开发】DAO和VO_第1张图片

public class AccountDao {
	//获取所有账号信息
	public ArrayList<Account> queryAllAccounts() throws Exception{
		ArrayList<Account> accounts = new ArrayList<Account>();
		Connection connection = null;
		String userName = "sa";
	    String userPwd = "123456789";
	    try {
	        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
	        connection = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=MyBlog;",userName,userPwd);
	        Statement statement = connection.createStatement();
	        String sql = "SELECT * FROM Account";
	        ResultSet rs = statement.executeQuery(sql);
	        while(rs.next()){
	        	Account account = new Account();
	        	account.setUserName(rs.getString("name"));
	        	account.setPassword(rs.getString("password"));
				account.setSex(rs.getString("sex"));
	        	accounts.add(account);
	        }
	        rs.close();
	        statement.close();

	    } catch (ClassNotFoundException | SQLException e) {
	        e.printStackTrace();
	    }finally{
	    	try{
	    		if(connection != null){
	    			connection.close();
	    			connection = null;
	    		}
	    	}catch(Exception e){
	    	}
	    }

	    return accounts;
	}

}

3.编写VO

<%@ page language="java" import="java.util.*,java.sql.*" contentType="text/html; cahrset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="lesour.beans.Account" %>
<%@ page import="lesour.dao.AccountDao" %>
<html>
<body>
	<%
		AccountDao accountdao = new AccountDao();
		ArrayList<Account> accounts = accountdao.queryAllAccounts();
	%>
	<table border=1>
		<tr>
			<td>姓名td>
			<td>密码td>
			<td>性别td>
		tr>
		<%
			for(int i=0;i
		<tr>
			<td><%=account.getUserName() %>td>
			<td><%=account.getPassword() %>td>
			<td><%=account.getSex() %>td>
		tr>
		<% } %>
	table>
body>
html>

【Java Web开发】DAO和VO_第2张图片

你可能感兴趣的:(Java,EE)