码迷,mamicode.com
首页 > 编程语言 > 详细

10步教你学会简单的MVC架构的java程序(适合新手)

时间:2014-11-30 23:21:37      阅读:322      评论:0      收藏:0      [点我收藏+]

标签:mvc   java   javascript   jsp   servet   

适合新手,大拿手下留情,谢谢!

第1步:安装Oracle数据库,安装过程不赘述了;

第2步:新建一个账号zwp_test

//创建临时表空间

create temporary tablespace zwp_test_temp  
 
tempfile 'F:\app\Administrator\oradata\zwp_test_temp.dbf' 
 
size 50m  
 
autoextend on  
 
next 50m maxsize 20480m  
 
extent management local;

//创建数据表空间
create tablespace zwp_test_data  
 
logging  
 
datafile 'F:\app\Administrator\oradata\zwp_test_data.dbf' 
 
size 50m  
 
autoextend on  
 
next 50m maxsize 20480m  
 
extent management local; 

//创建用户

create user zwp_test identified by zwp_test

default tablespace zwp_test_data

temporary tablespace zwp_test_temp;

//授予权限

grant connect,resource,dba to zwp_test;

第3步:新建一个users表

create table users 
( 
 userid   varchar2(8) not null primary key ,
 username varchar2(10) not null,
 password varchar2(20) default '' not null , 
 age      int default '' not null ,
 sex      varchar2(20) not null
 ) tablespace zwp_test_data;

第4步:插入数据

insert into users(userid,username,password,age,sex) values('001','zhouwp','123',25,'man');

第5步:搭建环境,我就不赘述了,可以百度、谷歌

功能说明:

做一个用户查询的功能

资源结构如下图:

bubuko.com,布布扣

第6步:显示界面JSP

<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%@ page import="com.web.zwp.*"  %>
<%@ page import="java.util.*"  %>
<html>
  <head>
  <script type="text/javascript">
  	function checkAll(ifAll) {
		//alert(ifAll.checked);
		var selectFlags = document.getElementsByName("selectFlag");
		for(var i=0;i<selectFlags.length;i++){
		//selectFlag[i].checked=document.getElementById("ifAll").checked;
		selectFlags[i].checked=ifAll.checked;
		}
	}
  </script>
  </head>
  <body>
  <form action="ShowUsers">
  	<table width="95%" border="1" cellspacing="0" cellpadding="0" align="center">
  	<input type="text" name="userid" id="userid" value=""/>
  	<input type="submit" value="查询">
	<input name="btnAdd" type="button" class="button1" id="btnAdd" value="添加" onClick="addUser()">
	<input name="btnModify" class="button1" type="button" id="btnModify" value="修改" onClick="modifyUser()">
	<input name="btnDelete" class="button1" type="button" id="btnDelete" value="删除" onClick="deleteUser()">
  		<tr>
  			<td width="55" class="rd6">
				<input type="checkbox" name="ifAll" id="ifAll" onClick="checkAll(this)">
			</td>
  			<td>姓名</td>
  			<td>密码</td>
  			<td>年龄</td>
  			<td>性别</td>		
  		</tr>
  		<%
  			User user = new User();
  			List<User> userList=(List<User>)request.getAttribute("userList");
  			if(userList != null && userList.size() > 0){
	  			for(Iterator iter=userList.iterator();iter.hasNext();){
				user=(User)iter.next();
  			}
  		 %>
  		<tr>
  			<td width="55" class="rd6">
				<input type="checkbox" name="ifAll" id="ifAll" onClick="checkAll(this)">
			</td>
  			<td><%=user.getUserName()%></td>
  			<td><%=user.getPassWord()%></td>
  			<td><%=user.getAge()%></td>
  			<td><%=user.getSex()%></td>	
 		</tr>
  		<%
  			}
  		%>
  	</table>
  	
  </form>
  </body>
</html>

第7步:链接数据库

package com.web.db;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class DB {
	
	private DB() {}
	
	/**
	 * 取得Connection
	 * @return
	 */
	public static Connection getConnection() {
		Connection conn = null;
		try {
			Class.forName("oracle.jdbc.driver.OracleDriver");
			conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:drp","zwp_test","zwp_test");
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return conn;
	} 
	
	public static void close(PreparedStatement pstmt) {
		if (pstmt != null) {
			try {
				pstmt.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}
	
	public static void close(Connection conn) {
		if (conn != null) {
			try {
				conn.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}
	
	public static void close(ResultSet rs) {
		if (rs != null) {
			try {
				rs.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}
	
	public static void main(String[] args) {
		DB.getConnection();
	}
}

第8步:创建User对象类

package com.web.zwp;

public class User {
	private String UserId;
	private String UserName;
	private String PassWord;
	private int    Age;
	private String Sex;
	
	public String getUserName() {
		return UserName;
	}
	public void setUserName(String userName) {
		UserName = userName;
	}
	public String getPassWord() {
		return PassWord;
	}
	public void setPassWord(String passWord) {
		PassWord = passWord;
	}
	public int getAge() {
		return Age;
	}
	public void setAge(int age) {
		Age = age;
	}
	public String getSex() {
		return Sex;
	}
	public void setSex(String sex) {
		Sex = sex;
	}
	public String getUserId() {
		return UserId;
	}
	public void setUserId(String userId) {
		UserId = userId;
	}
	
}

第9步:新建一个用户管理类UserManager,类中实现查询方法

package com.web.zwp;
import java.sql.*;

import com.web.db.DB;
import com.web.zwp.User;


public class UserManager {
		
	private static UserManager instance = new UserManager();
		
	UserManager() {}
	
	public static UserManager getInstance() {
		return instance;
	}
	/*
	 * 
	 * 查询所有
	 */
	public User findAllUser() {
		String sql = "select * from users";
		Connection conn = null;
		PreparedStatement pstmt = null;
		ResultSet rs = null;
		User user = null;
		try {
			conn = DB.getConnection();
			pstmt = conn.prepareStatement(sql);
			rs = pstmt.executeQuery();
			if (rs.next()) {
				user = new User();
				user.setUserId(rs.getString("userid"));
				user.setUserName(rs.getString("username"));
				user.setPassWord(rs.getString("password"));
				user.setAge(rs.getInt("age"));
				user.setSex(rs.getString("sex"));
			}
		}catch(SQLException e) {
			e.printStackTrace();
		}finally {
			DB.close(rs);
			DB.close(pstmt);
			DB.close(conn);
		} 
		return user;
	}
	
	/*
	 * 按照ID查询
	 */
	public User findAllUserById(String userId) {
		String sql = "select * from users where userid=?";
		Connection conn = null;
		PreparedStatement pstmt = null;
		ResultSet rs = null;
		User user = null;
		try {
			conn = DB.getConnection();
			pstmt = conn.prepareStatement(sql);
			pstmt.setString(1, userId);
			rs = pstmt.executeQuery();
			if (rs.next()) {
				user = new User();
				user.setUserId(rs.getString("userid"));
				user.setUserName(rs.getString("username"));
				user.setPassWord(rs.getString("password"));
				user.setAge(rs.getInt("age"));
				user.setSex(rs.getString("sex"));
			}
		}catch(SQLException e) {
			e.printStackTrace();
		}finally {
			DB.close(rs);
			DB.close(pstmt);
			DB.close(conn);
		} 
		return user;
	}
	
	
}

第10步:通过HttpServet实现控制部分M

package com.web.zwp;

import java.io.IOException;
import java.util.ArrayList;
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 ShowUsers extends HttpServlet {
	/**
	 * 
	 */
	//private static final long serialVersionUID = 3434710866509057630L;

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		String userid=request.getParameter("userid");
		if(userid==null || userid.trim().length()==0)
		{
			User user=UserManager.getInstance().findAllUser();
			List<User> userList = new ArrayList<User>();
			userList.add(user);
		
			request.setAttribute("userList", userList);
			request.getRequestDispatcher("/ShowUsers.jsp").forward(request, response);
		}
		else
		{
			User user=UserManager.getInstance().findAllUserById(userid);
			List<User> userList = new ArrayList<User>();
			userList.add(user);
		//从数据库中获取数据传给request对象中的userList属性,并转发到前台jsp
			request.setAttribute("userList", userList);
			request.getRequestDispatcher("/ShowUsers.jsp").forward(request, response);
		}

	}
	
	public void doGet (HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		this.doPost(request, response);
	}
}


最终显示界面样式:

bubuko.com,布布扣









10步教你学会简单的MVC架构的java程序(适合新手)

标签:mvc   java   javascript   jsp   servet   

原文地址:http://blog.csdn.net/davis_chou/article/details/41551479

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!