- 浏览: 210937 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
zjut_ww:
非常感谢分享。。但是我在使用过程中遇到一点小问题。就是如果用来 ...
java正则表达式找出不包含特定字符串 -
mohican52:
在吗,大哥
struts2首页forward跳转后执行action -
hz2005_2009:
Y轴中文问题怎么解决?
FusionChartsFree调用json数据的简单例子 -
xixian:
chenhao_yssy 写道把num换称9.985和9.99 ...
Doublel保留两位小数 -
chenhao_yssy:
把num换称9.985和9.995试试。
Doublel保留两位小数
注:以下仅为自己方便记忆搭建项目步骤。若想详细解析步骤可不必看此文章
使用MySql建库,名字为test,代码如下
建表,名为 users 代码如下
新建项目名为test后,
在lib文件中导入以下包
建个基本的dao父类,代码如下
-----------DAO父类-----------放在src目录下com.test.dao中-----
---------------Config.ini文件--------放在src目录下com.test.dao中------------
----------------DAO基本接口------放在src目录下com.test.dao中----
--------------建立相应povo---Users.java---放在src目录下com.test.povo中---
----------建立子类DAO--UsersDao----放在src目录下com.test.dao中---
----------建立log4j.properties文件,为日志的配置文件--放在src目录下----
dao层架构完毕
开始service层,src新建目录com.test.service
--------在该目录下新建--TestService.java---
到servlet层--新建com.test.servlet目录
新建--TestServlet.java------
--------配置web.xml-添加一下代码---
整个项目架构搭建完毕
测试 在WebContent下建名为jsp文件夹
新建 test.jsp
list.jsp
使用MySql建库,名字为test,代码如下
CREATE DATABASE `test` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
建表,名为 users 代码如下
create table users( id int PRIMARY KEY NOT NULL auto_increment, testname varchar(45) )
新建项目名为test后,
在lib文件中导入以下包
commons-logging-1.1.jar log4j-1.2.13.jar mysql-connector-java-5.1.6-bin.jar
建个基本的dao父类,代码如下
-----------DAO父类-----------放在src目录下com.test.dao中-----
import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.Properties; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; public abstract class ABaseDao { public static ResultSet rs = null; public static Connection conn = null; public static PreparedStatement pstmt = null; private Log logger = LogFactory.getLog(getClass()); private static Properties p = null; // public static CallableStatement proc=null; //用于调用已储存过�? public Connection getConnection() { Connection conn = null; try { if (p == null) { p = new Properties(); p.load(new FileInputStream(new File(this.getClass() .getResource("Config.ini").getPath()))); } Class.forName(p.getProperty("database.driverClassName")); conn = DriverManager.getConnection(p.getProperty("database.url"), p .getProperty("database.username"), p .getProperty("database.password")); logger.info("Get connection success"); } catch (FileNotFoundException e) { logger.error("Getconnection error " + e.toString()); } catch (IOException e) { logger.error("Getconnection error " + e.toString()); } catch (Exception e) { logger.error("Getconnection error " + e.toString()); } return conn; } public void close() { try { if (rs != null) { rs.close(); } if (conn != null) { conn.close(); } if (pstmt != null) { pstmt.close(); } logger.info("Close database success"); } catch (Exception e) { logger.error("Close database error " + e.toString()); } } }
---------------Config.ini文件--------放在src目录下com.test.dao中------------
database.driverClassName=com.mysql.jdbc.Driver database.username=root database.password=root database.url=jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=UTF-8
----------------DAO基本接口------放在src目录下com.test.dao中----
import java.io.Serializable; import java.util.List; public interface IBaseDao { public void add(T t); public void edit(T t); public void delete(T t); public T get(ID id); public List getAll(); public List findBySql(String sql); public void batchDelete(String ids); public void batchUpdate(String ids); }
--------------建立相应povo---Users.java---放在src目录下com.test.povo中---
import java.io.Serializable; public class Users implements Serializable { /** * */ private static final long serialVersionUID = 8781467488122156922L; private int Id; private String testName; public int getId() { return Id; } public void setId(int id) { Id = id; } public String getTestName() { return testName; } public void setTestName(String testName) { this.testName = testName; } }
----------建立子类DAO--UsersDao----放在src目录下com.test.dao中---
import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import com.test.povo.Users; public class UsersDao extends ABaseDao implements IBaseDao<Users, Integer> { private Log log = LogFactory.getLog(getClass()); public void add(Users t) { conn = super.getConnection(); try { pstmt = conn .prepareStatement("insert into users (testname)" + " values (?,?,?,?)"); pstmt.setString(1, t.getTestName()); pstmt.execute(); log.info("Add users success"); } catch (SQLException e) { log.error("Add users error " + e.toString()); } finally { super.close(); } } public void batchDelete(String ids) { conn = super.getConnection(); try { pstmt = conn .prepareStatement("delete from users where id in (?)"); pstmt.setString(1, ids); pstmt.execute(); log.info("batchDelete users success"); } catch (SQLException e) { log.error("batchDelete users error " + e.toString()); } finally { super.close(); } } public void batchUpdate(String ids) { } public void delete(Users t) { conn = super.getConnection(); try{ pstmt=conn.prepareStatement("delete from users where id=? "); pstmt.setInt(1,t.getId()); pstmt.execute(); log.info("delete users success"); }catch(SQLException e){ log.error("delete users error " + e.toString()); }finally{ super.close(); } } public void edit(Users t) { conn = super.getConnection(); try{ pstmt=conn.prepareStatement("update users set testname=? where id=? "); pstmt.setString(1, t.getTestName()); pstmt.setInt(2, t.getId()); pstmt.execute(); log.info("edit users success"); }catch(SQLException e){ log.error("edit users error" + e.toString()); }finally{ super.close(); } } public List<Users> findBySql(String sql) { conn = super.getConnection(); List<Users> nList=new ArrayList<Users>(); try{ pstmt=conn.prepareStatement(sql); rs=pstmt.executeQuery(); while(rs.next()){ Users album=new Users(); album.setId(rs.getInt(1)); album.setTestName(rs.getString(2)); nList.add(album); } log.info("findBySql users success"); }catch(SQLException e){ log.error("findBySql users error" + e.toString()); }finally{ super.close(); } return nList; } public Users get(Integer id) { conn = super.getConnection(); Users album=new Users(); try{ pstmt=conn.prepareStatement("select id,testname from users where id=?"); pstmt.setInt(1, id); rs=pstmt.executeQuery(); while(rs.next()){ album.setId(rs.getInt(1)); album.setTestName(rs.getString(2)); album.setId(rs.getInt(3)); } log.info("get users success"); }catch(SQLException e){ log.error("get users error" + e.toString()); }finally{ super.close(); } return album; } public List<Users> getAll() { conn = super.getConnection(); List<Users> nList=new ArrayList<Users>(); try{ pstmt=conn.prepareStatement("select id,testname from users"); rs=pstmt.executeQuery(); while(rs.next()){ Users album=new Users(); album.setId(rs.getInt(1)); album.setTestName(rs.getString(2)); nList.add(album); } log.info("getAll Album success"); }catch(SQLException e){ log.error("getAll Album error" + e.toString()); System.out.println("sdfsdf"); }finally{ super.close(); } return nList; } public List<Users> findPage(int pageSize, int startRow) { conn = super.getConnection(); List<Users> nList=new ArrayList<Users>(); try { String hql = "select * from album limit ?,?"; pstmt = conn.prepareStatement(hql); pstmt.setInt(1, startRow); pstmt.setInt(2, pageSize); rs=pstmt.executeQuery(); while(rs.next()){ Users album=new Users(); album.setId(rs.getInt(1)); album.setTestName(rs.getString(2)); album.setId(rs.getInt(3)); nList.add(album); } log.info("findPage users success"); }catch(SQLException e){ log.error("findPage users error" + e.toString()); }finally{ super.close(); } return nList; } public List<Users> getList(int total) { conn = super.getConnection(); List<Users> nList=new ArrayList<Users>(); try{ pstmt=conn.prepareStatement("select id,testname from users order by id desc limit 0," + total); rs=pstmt.executeQuery(); while(rs.next()){ Users album=new Users(); album.setId(rs.getInt(1)); album.setTestName(rs.getString(2)); album.setId(rs.getInt(3)); nList.add(album); } log.info("getAll users success"); }catch(SQLException e){ log.error("getAll users error" + e.toString()); }finally{ super.close(); } return nList; } }
----------建立log4j.properties文件,为日志的配置文件--放在src目录下----
# Set log levels log4j.rootLogger = DEBUG, LogFile, ErrorFile # Save the log info to the log file log4j.appender.LogFile = org.apache.log4j.RollingFileAppender log4j.appender.LogFile.File = /logs/powersave_info.log log4j.appender.LogFile.Append = true log4j.appender.LogFile.ImmediateFlush = true log4j.appender.LogFile.MaxFileSize = 8MB log4j.appender.LogFile.MaxBackupIndex = 256 log4j.appender.LogFile.Threshold = INFO log4j.appender.LogFile.layout = org.apache.log4j.PatternLayout log4j.appender.LogFile.layout.ConversionPattern = <%-d{yyyy-MM-dd HH:mm:ss}> <%t> %l %n<%p> %m%n%n # Save the error info to the error file. A file one day. log4j.appender.ErrorFile = org.apache.log4j.DailyRollingFileAppender log4j.appender.ErrorFile.File = /logs/powersave_error.log log4j.appender.ErrorFile.Append = true log4j.appender.ErrorFile.ImmediateFlush = true log4j.appender.ErrorFile.Threshold = ERROR log4j.appender.ErrorFile.layout = org.apache.log4j.PatternLayout log4j.appender.ErrorFile.layout.ConversionPattern = <%-d{yyyy-MM-dd HH:mm:ss}> <%t> %l %n<%p> %m%n%n
dao层架构完毕
开始service层,src新建目录com.test.service
--------在该目录下新建--TestService.java---
package com.test.service; import java.util.List; import com.test.povo.Users; import com.test.dao.UsersDao; public class TestService { private UsersDao testDao; public TestService(){ testDao=new UsersDao(); } public Users getMember(int id){ return testDao.get(id); } public void addMember(Users m){ testDao.add(m); } public void deleteMember(int id){ testDao.batchDelete(id+""); } public void deleteMember(String ids){ testDao.batchDelete(ids); } public void updateMember(Users m){ testDao.edit(m); } public List<Users> getList(){ return testDao.getAll(); } }
到servlet层--新建com.test.servlet目录
新建--TestServlet.java------
package com.test.servlet; import java.io.IOException; import java.io.PrintWriter; import java.net.URLDecoder; import java.net.URLEncoder; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import com.test.povo.Users; import com.test.service.TestService; /** * Servlet implementation class AdminManagerServlet */ public class TestServlet extends HttpServlet { private static final long serialVersionUID = 1L; private TestService testService; /** * @see HttpServlet#HttpServlet() */ public TestServlet() { testService=new TestService(); } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request,response); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub String method=request.getParameter("method"); if("list".equals(method)){ testList(request,response); } } private void testList(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { List<Users> list=testService.getList(); request.setAttribute("list", list); getServletContext().getRequestDispatcher("/jsp/list.jsp").forward(request, response); } }
--------配置web.xml-添加一下代码---
<display-name>testServlet</display-name> <servlet> <description> </description> <display-name>TestServlet</display-name> <servlet-name>TestServlet</servlet-name> <servlet-class>com.test.servlet.TestServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>TestServlet</servlet-name> <url-pattern>/TestServlet</url-pattern> </servlet-mapping>
整个项目架构搭建完毕
测试 在WebContent下建名为jsp文件夹
新建 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"> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <link rel="stylesheet" type="text/css" href="<%=basePath%>style/css/page.css" /> <title>list</title> <script type="text/javascript"> </script> </head> <body> <form id="myform" name="myform" method="post" action="<%=basePath%>TestServlet?method=list"> <input type="submit" value="查看用户"></input> </form> </body> </html>
list.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.util.List"%> <%@page import="com.test.povo.Users"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <link rel="stylesheet" type="text/css" href="<%=basePath%>style/css/page.css" /> <title>list</title> <script type="text/javascript"> </script> </head> <body> 用户名为:<br/> <% List<Users> testlist=(List)request.getAttribute("list"); if(!testlist.equals(null)){ for(Users t:testlist){ %> <%=t.getTestName() %><br/> <% } } %> </body> </html>
发表评论
-
tomcat配置Gzip 压缩进行优化
2012-04-18 18:02 1268Gzip 压缩可以大大提高浏览网站的速度,它的原理是,在客 ... -
电影采集
2012-03-24 14:55 0import java.io.IOExceptio ... -
获取天气
2012-03-15 20:42 0package test; import java ... -
城市代码
2012-03-15 20:40 0101010100=北京 101010200=海淀 10 ... -
jsp下载
2011-08-18 21:00 931response.setContentType(filemi ... -
jsp简单的登录过滤
2010-03-29 16:05 1129登录后会将用户信息保存到session里 若以下过滤器检测到s ...
相关推荐
详细说明了搭建JDK + ECLISPS + TOMCAT的步骤,并实现了一个HelloWord的Servlet实例!
在Eclipse中,您可以创建Java项目,添加Servlet、JSP等Web组件,并使用Tomcat服务器来运行和调试您的Web应用程序。 Tomcat是一个开源的Java Servlet容器,它可以帮助您将Java Web应用程序部署到服务器上。您可以在...
本教程是基于MyEclipse环境下基于maven搭建的springmvc步骤(图文教程),文章结尾含有源码下载地址: 新建maven project File->New->Project 选择Maven Project 选择项目路径 Use default Workspace location默认...
Tomcat全攻略 一:简介 tomcat是jakarta项目中的一个重要的子项目,其被JavaWorld杂志的编辑选为2001年度 最具创新的java产品(Most Innovative Java Product),同时它又是sun公司官方推荐的servlet和jsp容器(具体...
如果你使用的是 Eclipse 环境,可以直接参阅:Eclipse JSP/Servlet 环境搭建。 配置Java开发工具(JDK) 这一步涉及 Java JDK 的下载和 PATH 环境变量的配置。 您可以从 Oracle 公司的 Java 页面中下载 JDK:...
本文将会详细地展示如何搭建JSP的开发环境。本次教程使用的是最新版的Eclipse 2018-09编辑器和最新版的Apache Tomcat v9.0,步骤详细,内容详尽,适合零基础学者作为学习参考
搭建步骤 创建数据库。如使用MySQL,字符集选择为utf8或者utf8mb4(支持更多特殊字符如表情字符emoji,推荐)。 执行数据库脚本。数据库脚本在database目录下。 在eclipse中导入maven项目。点击eclipse菜单File - ...
搭建步骤 一、导入依赖 <groupId>com.github.yuyenews</groupId> <artifactId>Martian <version>4.0.0 二、创建配置类 public class DemoConfig extends MartianConfig { @Override public int port() { ...
AdminStore 本源码包采用maven结构 环境要求 JDK6或更高版本(支持JDK7、JDK8)。建议使用JDK8,有更好的内存管理。更低版本的JDK6、JDK7可能需要设置Java内存-XX:PermSize=128M -...搭建步骤 创建数据库。如使用MySQL
使用SpringBoot创建web项目,并使用外部Tomcat,并且使工程支持JSP 简单介绍: 特点: 步骤简介 下面就使用SpringBoot创建一个web工程,并且使用外部的Tomcat和实现对jsp的支持: 一、创建工程 1.首先使用spring初始...
在实际应用中,如果网站的访问量很大,为了提高访问速度,可以与多个Tomcat服务器与Apache服务器集成,让他们共同运行servlet/jsp 组件的任务,多个Tomcat服务器构成了一个集群(Cluster)系统,共同为客户提供服务...
搭建步骤 创建数据库。如使用MySQL,字符集选择为utf8或者utf8mb4(支持更多特殊字符,推荐)。 执行数据库脚本。数据库脚本在database目录下。 在eclipse中导入maven项目。点击eclipse菜单File-Import,选择Maven-...
springmvc-demomaven 搭建spring mvc 步骤使用Maven搭建SpringMVC1、新建Maven项目,选择webapp,如下图,点击next,输入GroupId和ArtifactId(即项目名称)后点击Finish。2、此时项目会报错,如下:通过提示信息可知...
从14章到最后的源代码资源 part1 为1到14章; part2 为剩下的源代码;...第七篇为“Web应用开发实例”,围绕一个电子商务网站,从需求分析、架构选取、数据存储、开发、测试及部署等过程中阐述Web开发的步骤实例讲解。
本专栏主要为Java程序设计(基础)实验报告和Java程序设计(进阶)实验报告,基础篇有JAVA环境搭建、Java语言基础、方法和数组、面向对象基础、Java常用类、继承与接口、成员访问控制与异常、JavaFX程序设计、Java...
系统框架篇则是以架构设计的高度,讲解搭建网站的三大框架Struts、Hibernate、Sprin9及标签库。项目实战篇详细阐述了通用论坛BBS、社交网站、DIY商品电子交易平台3个系统的开发细节,使读者真正掌握JavaWeb开发的...
本案例使用Servlet+jsp制作,用MyEclipse和Mysql数据库进行搭建,适合新手学习,超级详细,内含笔记与详细实现步骤
如果你要自己搭建,那么使用wechat4j只需要三步就可以搭建微信开发环境。 1. 创建一个web工程,导入jdk和相关的web工程jar包。 2. 下载wechat4j.jar包,下载地址[wechat4j下载]...
基于J2EE的B2C电子商务系统开发是一个较为复杂的项目,需要整合多种技术和组件,如Java语言、JSP/Servlet、Struts、Hibernate、Spring等框架、数据库、Web服务器等。以下是一些可能需要考虑的关键技术和步骤: 系统...
(1)创建 JavaWeb 项目,导入数据库驱动 jar 包,创建对应包存放相关源文件 (2)创建实体类用于出租房屋信息的数据 (3)创建数据访问层,并编写数据库连接和数据访问层代码 (4)创建业务逻辑层,并编写业务逻辑...