java mvc的解说_javaEE mvc样例具体解释

69d12a631abbd1e6eeab41e985ca0171.png

一个不错的样例值得细细品味:

以下依照包顺序将代码贴出来供大家參考:

IEmpDAO

package org.lzch.dao;

import java.util.List;

import org.lzch.vo.Emp;

public interface IEmpDAO {

public boolean doCreate(Emp emp)throws Exception;

public boolean doUpdate(Emp emp)throws Exception;

public boolean doDelete(int empno)throws Exception;

public List findAll(int currentPage,int lineSize,String keyword)throws Exception;

public int getAllCount(String keyword)throws Exception;

public Emp findEmpById(int empno)throws Exception;

public boolean getAllEname(String ename)throws Exception;

}

EmpDAOImpl

package org.lzch.dao.impl;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.util.ArrayList;

import java.util.List;

import org.lzch.dao.IEmpDAO;

import org.lzch.vo.Emp;

public class EmpDAOImpl implements IEmpDAO {

private Connection conn=null;

public EmpDAOImpl(Connection conn){

this.conn=conn;

}

//加入用户信息

public boolean doCreate(Emp emp) throws Exception {

// TODO Auto-generated method stub

boolean flag=false;

PreparedStatement pstmt=null;

try{

this.conn.setAutoCommit(false);//手动提交

String sql="INSERT INTO emp1(empno,ename,job,hiredate,sal,comm,photo)VALUES(?,?,?,?,?,?,?)";

pstmt=this.conn.prepareStatement(sql);

pstmt.setInt(1, emp.getEmpno());

pstmt.setString(2, emp.getEname());

pstmt.setString(3, emp.getJob());

pstmt.setDate(4, new java.sql.Date(emp.getHiredate().getTime()));

pstmt.setFloat(5, emp.getSal());

pstmt.setFloat(6, emp.getComm());

pstmt.setString(7, emp.getPhoto());

int count=pstmt.executeUpdate();

this.conn.commit();//提交

if(count>0){

flag=true;

}

}catch(Exception e){

this.conn.rollback();

}finally{

try{

pstmt.close();

}catch(Exception e){

throw e;

}

}

return flag;

}

//删除

public boolean doDelete(int empno) throws Exception {

// TODO Auto-generated method stub

boolean flag=false;

PreparedStatement pstmt=null;

try{

String sql="DELETE FROM emp1 WHERE empno=?

";

pstmt=this.conn.prepareStatement(sql);

pstmt.setInt(1, empno);

int count=pstmt.executeUpdate();

if(count>0){

flag=true;

}

}catch(Exception e){

throw e;

}finally{

try{

pstmt.close();

}catch(Exception e){

throw e;

}

}

return flag;

}

//更新

public boolean doUpdate(Emp emp) throws Exception {

// TODO Auto-generated method stub

boolean flag=false;

PreparedStatement pstmt=null;

try{

String sql="UPDATE emp1 SET ename=?,job=?,hiredate=?,sal=?,comm=?,photo=? WHERE empno=?";

pstmt=this.conn.prepareStatement(sql);

pstmt.setString(1, emp.getEname());

pstmt.setString(2, emp.getJob());

pstmt.setDate(3, new java.sql.Date(emp.getHiredate().getTime()));

pstmt.setFloat(4, emp.getSal());

pstmt.setFloat(5, emp.getComm());

pstmt.setString(6, emp.getPhoto());

pstmt.setInt(7, emp.getEmpno());

int count=pstmt.executeUpdate();

System.out.println("emp_UPDATE_SQL==="+sql);

if(count>0){

flag=true;

}

}catch(Exception e){

throw e;

}finally{

try{

pstmt.close();

}catch(Exception e){

throw e;

}

}

return flag;

}

//查询全部信息

public List findAll(int currentPage, int lineSize, String keyword)

throws Exception {

// TODO Auto-generated method stub

List all=new ArrayList();

PreparedStatement pstmt=null;

String sql=null;

if(keyword==null||"".equals(keyword)){

sql="SELECT TOP "+lineSize+" empno,ename,job,hiredate,sal,comm,photo FROM " +

"(SELECT TOP "+lineSize+" empno,ename,job,hiredate,sal,comm,photo FROM " +

"(SELECT TOP "+currentPage*lineSize+" * FROM emp1 ORDER BY empno ASC)temptlb1 ORDER BY empno DESC)temptlb2 ORDER BY empno asc";

}else{

sql="SELECT empno,ename,job,hiredate,sal,comm,photo FROM emp1 WHERE empno LIKE '%"+keyword+"%' " +

"OR ename LIKE '%"+keyword+"%' OR job LIKE '%"+keyword+"%' OR hiredate LIKE '%"+keyword+"%'" +

" OR sal LIKE '%"+keyword+"%' OR comm LIKE '%"+keyword+"%' ";

}

try{

pstmt=this.conn.prepareStatement(sql);

//pstmt.setString(1, "%"+keyword+"%");

//pstmt.setString(2, "%"+keyword+"%");

//pstmt.setString(3, "%"+keyword+"%");

//pstmt.setString(4, "%"+keyword+"%");

//pstmt.setString(5, "%"+keyword+"%");

//pstmt.setString(6, "%"+keyword+"%");

System.out.println(sql);

ResultSet rs=pstmt.executeQuery();

Emp emp=null;

while(rs.next()){

emp=new Emp();

emp.setEmpno(rs.getInt(1));

emp.setEname(rs.getString(2));

emp.setJob(rs.getString(3));

emp.setHiredate(rs.getDate(4));

emp.setSal(rs.getFloat(5));

emp.setComm(rs.getFloat(6));

emp.setPhoto(rs.getString(7));

all.add(emp);

}

}catch(Exception e){

throw e;

}finally{

try{

pstmt.close();

}catch(Exception e){

throw e;

}

}

return all;

}

//按ID查询

public Emp findEmpById(int empno) throws Exception {

// TODO Auto-generated method stub

Emp emp=null;

PreparedStatement pstmt=null;

try{

String sql="SELECT empno,ename,job,hiredate,sal,comm,photo FROM emp1 WHERE empno=?";

pstmt=this.conn.prepareStatement(sql);

pstmt.setInt(1, empno);

ResultSet rs=pstmt.executeQuery();

if(rs.next()){

emp=new Emp();

emp.setEmpno(rs.getInt(1));

emp.setEname(rs.getString(2));

emp.setJob(rs.getString(3));

emp.setHiredate(rs.getDate(4));

emp.setSal(rs.getFloat(5));

emp.setComm(rs.getFloat(6));

emp.setPhoto(rs.getString(7));

}

}catch(Exception e){

throw e;

}finally{

try{

pstmt.close();

}catch(Exception e){

throw e;

}

}

return emp;

}

//查询数据表里 记录集

public int getAllCount(String keyword) throws Exception {

// TODO Auto-generated method stub

int count=0;

PreparedStatement pstmt=null;

try{

String sql="SELECT COUNT(empno) FROM emp1 WHERE empno LIKE ?

OR ename LIKE ? " +

"OR job LIKE ? OR hiredate LIKE ? OR sal LIKE ? OR comm LIKE ?

OR photo LIKE ?

";

pstmt=this.conn.prepareStatement(sql);

pstmt.setString(1, "%"+keyword+"%");

pstmt.setString(2, "%"+keyword+"%");

pstmt.setString(3, "%"+keyword+"%");

pstmt.setString(4, "%"+keyword+"%");

pstmt.setString(5, "%"+keyword+"%");

pstmt.setString(6, "%"+keyword+"%");

pstmt.setString(7, "%"+keyword+"%");

ResultSet rs=pstmt.executeQuery();

if(rs.next()){

count=rs.getInt(1);//返回数据表里的全部数据集geeInt(1):方法,查询表里全部数据集

}

}catch(Exception e){

throw e;

}finally{

try{

pstmt.close();

}catch(Exception e){

throw e;

}

}

return count;

}

//验证username是否存在

public boolean getAllEname(String ename)throws Exception{

boolean flag=false;

PreparedStatement pstmt=null;

try{

String sql="SELECT COUNT(ename) FROM emp1 WHERE ename=?";

pstmt=this.conn.prepareStatement(sql);

pstmt.setString(1, ename);

ResultSet rs=pstmt.executeQuery();

if(rs.next()){

if(rs.getInt(1)>0){

flag=true;

System.out.println("impl===flag=="+rs.getInt(1));

System.out.println("impl===flag=="+flag);

}else{

flag=false;

}

}

}catch(Exception e){

throw e;

}finally{

try{

pstmt.close();

}catch(Exception e){

throw e;

}

}

return flag;

}

}

EmpDAOProxy

package org.lzch.dao.proxy;

import java.util.List;

import org.lzch.dao.IEmpDAO;

import org.lzch.dao.impl.EmpDAOImpl;

import org.lzch.dbc.DatabaseConnection;

import org.lzch.vo.Emp;

public class EmpDAOProxy implements IEmpDAO {

private DatabaseConnection dbc=null;

private IEmpDAO dao=null;

int count=0;

public EmpDAOProxy(){

try{

this.dbc=new DatabaseConnection();

}catch(Exception e){

e.printStackTrace();

}

this.dao=new EmpDAOImpl(this.dbc.getConnection());

}

public boolean doCreate(Emp emp) throws Exception {

// TODO Auto-generated method stub

boolean flag=false;

try{

if(this.dao.findEmpById(emp.getEmpno())==null){

flag=this.dao.doCreate(emp);//调用真实主题类

}

}catch(Exception e){

throw e;

}finally{

try{

this.dbc.closeConnection();

}catch(Exception e){

throw e;

}

}

return flag;

}

public boolean doDelete(int empno) throws Exception {

// TODO Auto-generated method stub

boolean flag=false;

try{

flag=this.dao.doDelete(empno);//调用真实主题类

}catch(Exception e){

throw e;

}finally{

try{

this.dbc.closeConnection();

}catch(Exception e){

throw e;

}

}

return flag;

}

public boolean doUpdate(Emp emp) throws Exception {

// TODO Auto-generated method stub

boolean flag=false;

try{

flag=this.dao.doUpdate(emp);//调用真实主题类

}catch(Exception e){

throw e;

}finally{

try{

this.dbc.closeConnection();

}catch(Exception e){

throw e;

}

}

return flag;

}

public List findAll(int currentPage, int lineSize, String keyword)

throws Exception {

// TODO Auto-generated method stub

List all=null;

try{

all=this.dao.findAll(currentPage, lineSize, keyword);//调用真实主题类

count=this.dao.getAllCount(keyword);//取得最大记录数 //调用真实主题类

}catch(Exception e){

throw e;

}finally{

try{

this.dbc.closeConnection();

}catch(Exception e){

throw e;

}

}

return all;

}

public Emp findEmpById(int empno) throws Exception {

// TODO Auto-generated method stub

Emp emp=null;

try{

emp=this.dao.findEmpById(empno);//调用真实主题类

}catch(Exception e){

throw e;

}finally{

try{

this.dbc.closeConnection();

}catch(Exception e){

throw e;

}

}

return emp;

}

public int getAllCount(String keyword) throws Exception {

// TODO Auto-generated method stub

return this.count;

}

public boolean getAllEname(String ename)throws Exception{

boolean flag=false;

try{

flag=this.dao.getAllEname(ename);

}catch(Exception e){

throw e;

}finally{

try{

this.dbc.closeConnection();

}catch(Exception e){

throw e;

}

}

return flag;

}

}

DatabaseConnection

package org.lzch.dbc;

import java.sql.Connection;

import java.sql.DriverManager;

public class DatabaseConnection {

private static final String DBDRIVER="com.microsoft.sqlserver.jdbc.SQLServerDriver";

private static final String DBURL="jdbc:sqlserver://localhost:1433;DatabaseName=login";

private static final String DBUSER="sa";

private static final String DBPASSWORD="000000";

private Connection conn=null;

public DatabaseConnection(){

try{

Class.forName(DBDRIVER);

this.conn=DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD);

}catch(Exception e){

e.printStackTrace();

}

}

public Connection getConnection(){

return this.conn;

}

public void closeConnection(){

if(this.conn!=null){

try{

this.conn.close();

}catch(Exception e){

e.printStackTrace();

}

}

}

}

DAOFactory

package org.lzch.factory;

import org.lzch.dao.IEmpDAO;

import org.lzch.dao.proxy.EmpDAOProxy;

public class DAOFactory {

public static IEmpDAO getIEmpDAOInstance(){

return new EmpDAOProxy();

}

}

EmpEncodingFilter

package org.lzch.filter;

import java.io.IOException;

import javax.servlet.Filter;

import javax.servlet.FilterChain;

import javax.servlet.FilterConfig;

import javax.servlet.ServletException;

import javax.servlet.ServletRequest;

import javax.servlet.ServletResponse;

public class EmpEncodingFilter implements Filter {

private String charset=null;

public void destroy() {

// TODO Auto-generated method stub

}

public void doFilter(ServletRequest req, ServletResponse resp,

FilterChain chain) throws IOException, ServletException {

// TODO Auto-generated method stub

req.setCharacterEncoding(this.charset);

chain.doFilter(req, resp);

}

public void init(FilterConfig config) throws ServletException {

// TODO Auto-generated method stub

this.charset=config.getInitParameter("charset");

}

}

EmpServlet

package org.lzch.servlet;

import java.io.File;

import java.io.IOException;

import java.io.PrintWriter;

import java.net.URLDecoder;

import java.text.SimpleDateFormat;

import java.util.ArrayList;

import java.util.Date;

import java.util.List;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import org.lzch.factory.DAOFactory;

import org.lzch.util.IPTimeStamp;

import org.lzch.vo.Emp;

import com.jspsmart.upload.SmartUpload;

public class EmpServlet extends HttpServlet {

public void service(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{

String p=req.getParameter("p");

if(p.equals("emp_insert")){

this.doCreate(req, resp);

}

if(p.equals("doUpdatePage")){

this.doUpdatePage(req, resp);

}

if(p.equals("doUpdate")){

this.doUpdate(req, resp);

}

if(p.equals("doDelete")){

this.doDelete(req, resp);

}

if(p.equals("getAllEname")){

this.getAllEname(req, resp);

}

}

public void doCreate(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{

List all=new ArrayList();

SmartUpload smart=new SmartUpload();

Emp emp=new Emp();

int empno=0;

String ename=null;

String job=null;

Date hiredate=null;

float sal=0.0f;

float comm=0.0f;

String photo="nophoto.jpg";

try{

smart.initialize(this.getServletConfig(),req,resp);//初始化上传

smart.upload();//准备上传

empno=Integer.parseInt(smart.getRequest().getParameter("empno"));

ename=smart.getRequest().getParameter("ename");

job=smart.getRequest().getParameter("job");

hiredate=new SimpleDateFormat("yyyy-mm-dd").parse(smart.getRequest().getParameter("hiredate"));

sal=Float.parseFloat(smart.getRequest().getParameter("sal"));

comm=Float.parseFloat(smart.getRequest().getParameter("comm"));

if(smart.getFiles().getFile(0).getSize()>0){//推断是否有上传文件

IPTimeStamp its=new IPTimeStamp(req.getRemoteAddr());

//拼凑上传文件名

photo=its.getIPTimeStampRand()+"."+smart.getFiles().getFile(0).getFileExt();

}

emp.setEmpno(empno);

emp.setEname(ename);

emp.setJob(job);

emp.setHiredate(hiredate);

emp.setSal(sal);

emp.setComm(comm);

emp.setPhoto(photo);

if(DAOFactory.getIEmpDAOInstance().doCreate(emp)){

if(smart.getFiles().getFile(0).getSize()>0){

//加入成功,保存上传文件

smart.getFiles().getFile(0).saveAs(getServletContext().getRealPath("/")+"jsp/upload/"+photo);

}

all.add("职员信息加入成功!");

}else{

all.add("职员信息加入失败!");

}

}catch(Exception e){

e.printStackTrace();

}

req.setAttribute("infoInsert", all);

req.getRequestDispatcher("jsp/admin/emp/emp_insert_do.jsp").forward(req, resp);

}

public void doUpdatePage(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{

int empno=0;

Emp emp=null;

try{

empno=Integer.parseInt(req.getParameter("empno"));

emp=DAOFactory.getIEmpDAOInstance().findEmpById(empno);

}catch(Exception e){

e.printStackTrace();

}

req.setAttribute("infoUpdatePage", emp);

req.getRequestDispatcher("jsp/admin/emp/emp_update.jsp").forward(req, resp);

}

public void doUpdate(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{

List all=new ArrayList();

SmartUpload smart=new SmartUpload();

Emp emp=new Emp();

int empno=0;

String ename=null;

String job=null;

Date hiredate=null;

float sal=0.0f;

float comm=0.0f;

String photo=smart.getRequest().getParameter("pic");

try{

smart.initialize(getServletConfig(),req,resp);//初始化上传

smart.upload();//准备上传

empno=Integer.parseInt(smart.getRequest().getParameter("empno"));

ename=smart.getRequest().getParameter("ename");

job=smart.getRequest().getParameter("job");

hiredate=new SimpleDateFormat("yyyy-mm-dd").parse(smart.getRequest().getParameter("hiredate"));

sal=Float.parseFloat(smart.getRequest().getParameter("sal"));

comm=Float.parseFloat(smart.getRequest().getParameter("comm"));

if(smart.getFiles().getFile(0).getSize()>0){

IPTimeStamp its=new IPTimeStamp(req.getRemoteAddr());

photo=its.getIPTimeStampRand()+"."+smart.getFiles().getFile(0).getFileExt();//拼凑上传文件名

}

emp.setEmpno(empno);

emp.setEname(ename);

emp.setJob(job);

emp.setHiredate(hiredate);

emp.setSal(sal);

emp.setComm(comm);

emp.setPhoto(photo);

if(DAOFactory.getIEmpDAOInstance().doUpdate(emp)){

if(smart.getFiles().getFile(0).getSize()>0){

//保存上传文件

smart.getFiles().getFile(0).saveAs(getServletContext().getRealPath("/")+"jsp/upload/"+photo);

}

all.add("员工信息改动成功!");

}else{

all.add("员工信息改动失败。");

}

}catch(Exception e){

e.printStackTrace();

}

req.setAttribute("infoUpdate", all);

req.getRequestDispatcher("jsp/admin/emp/emp_update_do.jsp").forward(req, resp);

}

public void doDelete(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{

int empno=0;

String photo=null;

List all=new ArrayList();

try{

empno=Integer.parseInt(req.getParameter("empno"));

photo=req.getParameter("photo");

System.out.println("photo=="+photo);

if(DAOFactory.getIEmpDAOInstance().doDelete(empno)){

if(!(photo.equals("nophoto.jpg"))){

File f=new File(this.getServletContext().getRealPath("/")+"jsp/upload/"+photo);//找到当前文件

System.out.println("当前文件是否存在=="+f.exists());

if(f.exists()){//推断当前文件或者文件文件夹是否存在。则

f.delete();//则进行删除

}

}

all.add("文件删除成功!");

}else{

all.add("文件删除失败!

");

}

}catch(Exception e){

e.printStackTrace();

}

req.setAttribute("infoDelete", all);

req.getRequestDispatcher("jsp/admin/emp/emp_delete_do.jsp").forward(req, resp);

}

public void getAllEname(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{

req.setCharacterEncoding("gb2312");

resp.setContentType("text/html;charset=gb2312");

String ename=null;

PrintWriter out=resp.getWriter();

try{

System.out.println("++++++后台取javascript传递參数++++++++"+req.getParameter("ename"));

//1.String name = URLDecoder.decode("client传输过来的中文字符","UTF-8");

ename=URLDecoder.decode(req.getParameter("ename"),"gb2312");

System.out.println("********servlet********"+ename);

if(DAOFactory.getIEmpDAOInstance().getAllEname(ename)){

out.print("true");

}else{

out.print("false");

}

}catch(Exception e){

e.printStackTrace();

}

}

}

Test

package org.lzch.test;

import java.util.Date;

import org.lzch.vo.Emp;

import org.lzch.factory.DAOFactory;

public class Test {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

Emp emp=new Emp();

emp.setEmpno(79);

emp.setEname("lzch");

emp.setJob("project师");

emp.setHiredate(new Date());

emp.setSal(5555.5f);

emp.setComm(350.9f);

emp.setPhoto("nophoto.jpg");

try{

if(DAOFactory.getIEmpDAOInstance().doCreate(emp)){

System.out.println("插入成功!");

}else{

System.out.println("插入失败!");

}

}catch(Exception e){

e.printStackTrace();

}

}

}

IPTimeStamp

package org.lzch.util;

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.Random;

public class IPTimeStamp {

private String ip=null;

public IPTimeStamp(String ip){

this.ip=ip;

}

//上传文件命名:IP+时间戳+3位随机数

public String getIPTimeStampRand(){

StringBuffer buf=new StringBuffer();

//加入当前IP地址

if(this.ip!=null){

String str[]=this.ip.split("\\.");//进行拆分IP地址

for(int i=0;i

buf.append(this.addZero(str[i], 3));//位数不够3位的。进行补0操作

}

}

//加入时间戳

buf.append(this.getTimeStamp());

//加入3为随机数

Random ran=new Random();

for(int i=0;i<3;i++){//循环3次

buf.append(ran.nextInt(10));//取得一位0到10之间的随机整数

}

return buf.toString();

}

//补0操作

public String addZero(String str,int len){

StringBuffer buf=new StringBuffer();

buf.append(str);

while(buf.length()

buf.insert(0, "0");//进行加入0操作

}

return buf.toString();

}

//时间戳

public String getTimeStamp(){

SimpleDateFormat sdf=new SimpleDateFormat("yyyyMMddHHmmssSSS");//取得当前时间

return sdf.format(new Date());

}

}

Emp

package org.lzch.vo;

import java.util.Date;

public class Emp {

private int empno;

private String ename;

private String job;

private Date hiredate;

private float sal;

private float comm;

private String photo;

public float getComm() {

return comm;

}

public void setComm(float comm) {

this.comm = comm;

}

public int getEmpno() {

return empno;

}

public void setEmpno(int empno) {

this.empno = empno;

}

public String getEname() {

return ename;

}

public void setEname(String ename) {

this.ename = ename;

}

public Date getHiredate() {

return hiredate;

}

public void setHiredate(Date hiredate) {

this.hiredate = hiredate;

}

public String getJob() {

return job;

}

public void setJob(String job) {

this.job = job;

}

public String getPhoto() {

return photo;

}

public void setPhoto(String photo) {

this.photo = photo;

}

public float getSal() {

return sal;

}

public void setSal(float sal) {

this.sal = sal;

}

}

emp_delete_do.jsp

删除

opener.window.location.reload() ;//又一次读取,刷新

function closeWin(){

window.close();

}

职员管理程序


List all=(List)request.getAttribute("infoDelete");

Iterator iter=all.iterator();

while(iter.hasNext()){

%>

}

%>

关闭窗体

emp_insert_do.jsp

注冊页面

opener.window.location.reload() ;//又一次读取。刷新

function closeWin(){

window.close();

}

职员管理程序


List all=(List)request.getAttribute("infoInsert");

Iterator iter=all.iterator();

while(iter.hasNext()){

%>

}

%>

关闭窗体

emp_insert.jsp

职员注冊页面

var xmlHttp;

var flag;

function createXMLHttp(){

if(window.XMLHttpRequest){

xmlHttp=new XMLHttpRequest();

}else{

xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");

}

}

function checkEname(ename){

createXMLHttp();

encodeURI(encodeURI(ename));//解决中文乱码问题两次编码

xmlHttp.open("POST","/EmpServlet?

p=getAllEname&ename="+ename);//设置一个请求。

alert("ename="+ename);

xmlHttp.onreadystatechange=checkEnameCallback;//设置请求完毕之后处理的回调函数

xmlHttp.send(null);//发送请求,不传递不论什么參数

document.getElementById("msg").innerHTML="正在验证.....";

}

function checkEnameCallback(){

if(xmlHttp.readyState==4){

alert("status==="+xmlHttp.status);

if(xmlHttp.status==200){

alert("responseText=="+xmlHttp.responseText);

//var text=xmlHttp.responseText;//接受返回的内容

var text=xmlHttp.responseText;

if(text=="true"){

flag=false;

document.getElementById("msg").innerHTML="反复的username,请更换username!

";

}else{

flag=true;

document.getElementById("msg").innerHTML="此username能够注冊。";

}

}

}

}

function checkForm(){

return flag;

}

//关闭窗体

function closeWin(){

window.close();

}

request.setCharacterEncoding("gb2312");

%>

var xmlHttp;

var flag;

function createXMLHttp(){

if(window.XMLHttpRequest){

xmlHttp=new XMLHttpRequest();

}else{

xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");

}

}

function checkEname(ename){

createXMLHttp();

alert("ename="+ename);

xmlHttp.open("POST","/EmpServlet?

p=getAllEname&ename="+ename);//设置一个请求,

xmlHttp.onreadystatechange=checkEnameCallback;//设置请求完毕之后处理的回调函数

xmlHttp.send(null);//发送请求,不传递不论什么參数

document.getElementById("msg").innerHTML="正在验证.....";

}

function checkEnameCallback(){

if(xmlHttp.readyState==4){

alert("status==="+xmlHttp.status);

if(xmlHttp.status==200){

alert("responseText=="+xmlHttp.responseText);

var text=xmlHttp.responseText;//接受返回的内容

if(text=="true"){

flag=false;

document.getElementById("msg").innerHTML="反复的username,请更换username!

";

}else{

flag=true;

document.getElementById("msg").innerHTML="此username能够注冊!";

}

}

}

}

function checkForm(){

return flag;

}

//关闭窗体

function closeWin(){

window.close();

}

加入职员

职员编号
职员姓名
职员职位
入职日期

οnclick='popUpCalendar(this,this,"yyyy-mm-dd")' readonly="true">

职员工资
职员奖金
职员照片

假设不想上传,能够不选!

关闭窗体

emp_list.jsp

职员查询程序

body,td{

font-size:13px;

}

function changeColor(obj,color){

obj.bgColor=color;

}

function goInsert(thisurl){

window.open(thisurl,"雇员管理","width=600,height=420,scrollbars=yes,resizable=yes");

}

function goUpdate(thisurl){

window.open(thisurl,"雇员管理","width=600,height=420,scrollbars=yes,resizable=yes");

}

function goDelete(thisurl){

window.open(thisurl,"雇员管理","width=600,height=420,scrollbars=yes,resizable=yes");

}

int lineSize=5;//每页显示5条记录

int currentPage=1;//当前第一页

int allRecorders=0;//显示数据表里总记录数,须要计算

List all=null;

try{

// 改动页数

currentPage = Integer.parseInt(request.getParameter("cp")) ;

}catch(Exception e){}

try{

// 改动行数

lineSize = Integer.parseInt(request.getParameter("ls")) ;

}catch(Exception e){}

%>

职员管理程序


String keyword=request.getParameter("keyword");

if(keyword==null){

keyword="";

}

%>

加入职员

try{

IEmpDAO dao=new EmpDAOProxy();

all=dao.findAll(currentPage,lineSize,keyword);//查询所有

allRecorders=dao.getAllCount(keyword);//所有记录数

%>

职员编号职员姓名职员职位入职日期职员工资职员奖金职员照片操作

Iterator iter=all.iterator();

while(iter.hasNext()){

Emp emp=(Emp)iter.next();

%>

<%=emp.getPhoto()%20%>

改动

删除

}

%>

}catch(Exception e){

e.printStackTrace();

}

%>

emp_update_do.jsp

改动

opener.window.location.reload() ;//又一次读取,刷新

function closeWin(){

window.close();

}

职员管理程序


List all=(List)request.getAttribute("infoUpdate");

Iterator iter=all.iterator();

while(iter.hasNext()){

%>

}

%>

关闭窗体

emp_update.jsp

更新页面

function closeWin(){

window.close();

}

Emp emp=(Emp)request.getAttribute("infoUpdatePage");

if(emp!=null){

%>

改动职员

职员编号
职员姓名<%=emp.getPhoto()%20%>
职员职位
入职日期

οnclick='popUpCalendar(this,this,"yyyy-mm-dd")' readonly="true" value="">

职员工资
职员奖金
职员照片

假设不想上传,能够不选!

}

%>

关闭窗体

split_page.jsp

仅仅须要在须要分页的地方导入此页面就可以

--%>

JSP + Oracle应用

body,td{

font-size:13px ;

}

function changeColor(obj,color){

obj.bgColor = color ;

}

function goInsert(thisurl){

window.open(thisurl,"雇员管理","width=600,height=420,scrollbars=yes,resizable=yes");

}

function goUpdate(thisurl){

window.open(thisurl,"雇员管理","width=600,height=420,scrollbars=yes,resizable=yes");

}

function goDelete(thisurl){

window.open(thisurl,"雇员管理","width=360,height=200,scrollbars=yes,resizable=yes");

}

// 解决提交时的中文乱码问题

request.setCharacterEncoding("GBK") ;

%>

int currentPage = 1 ;// 当前所在是第一页

int lineSize = 5 ;// 每页显示5条记录

int allRecorders = 0 ;// 总记录数。须要计算

int pageSize = 0 ;// 总页数,须要计算

int line[] = {5,10,15,20,25,30,45,50,100} ;

// 分页要跳转的路径

String SPURL = "" ;

// 接收查询内容

String keyWord = request.getParameter("keyWord") ;

String searchFlag = "FALSE" ;

String lineSizeFlag = "FALSE" ;

%>

try{

searchFlag = request.getParameter("searchFlag").toUpperCase() ;

}catch(Exception e){}

try{

lineSizeFlag = request.getParameter("lineSizeFlag").toUpperCase() ;

}catch(Exception e){}

if(keyWord==null){

keyWord = "" ;

}

%>

try{

// 改动页数

currentPage = Integer.parseInt(request.getParameter("currentPage")) ;

}catch(Exception e){}

try{

// 改动行数

lineSize = Integer.parseInt(request.getParameter("lineSize")) ;

}catch(Exception e){}

try{

// 记录数

allRecorders = Integer.parseInt(request.getParameter("allRecorders")) ;

}catch(Exception e){}

%>

pageSize = (allRecorders + lineSize - 1) / lineSize ;

if(pageSize==1){

currentPage = 1 ;

}

if(pageSize==0){

pageSize = 1 ;

}

%>

function go(c){

document.getElementById("cp").value = c ;

if("TRUE".equals(lineSizeFlag)){

%>

document.getElementById("ls").value = document.getElementById("lssel").value ;

}

%>

document.spform.submit() ;// 提交表单

}

function goLs(ls){

document.getElementById("ls").value = ls ;

document.getElementById("cp").value = document.getElementById("cpsel").value ;

document.spform.submit() ;// 提交表单

}

function goS(){

document.getElementById("cp").value = document.getElementById("cpsel").value ;

if("TRUE".equals(lineSizeFlag)){

%>

document.getElementById("ls").value = document.getElementById("lssel").value ;

}

%>

}

if("TRUE".equals(searchFlag)){

%>

输入查询关键字:

}

%>

"disabled":""%>>

>

>

>

跳转到第

for(int i=1;i<=pageSize;i++){

%>

>

}

%>

if("TRUE".equals(lineSizeFlag)){

%>

每页显示

for(int i=0;i

%>

>

}

%>

}

%>

if("TRUE".equals(lineSizeFlag)){

%>

}

%>

web.xml

TestJava2

index.html

index.htm

index.jsp

default.html

default.htm

default.jsp

empEncoding

org.lzch.filter.EmpEncodingFilter

charset

gb2312

empEncoding

/*

empServlet

org.lzch.servlet.EmpServlet

empServlet

/EmpServlet

emp.sql

CREATE TABLE emp1(

empno int not null PRIMARY KEY,

ename varchar(20),

jobvarchar(10),

hiredate datetime,

salfloat,

commfloat,

photovarchar(20)

)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值