Jsp+servlet+mysql搭建套路
1、建立数据库
根据需求建立相应的数据库
确立数据库的字段、属性、主键等
2、建立javaweb项目,搭建开发环境
在开发环境的/WebRoot/WEB-INF
下建立lib文件夹,存放需要使用的jar包
常用的包:
mysqldriver.jar
beanutil.jar
commons-logging.jar
jstl.jar
standard.jar
3、java内部书写,建立domain包
在其下书写bean类,类的字段与数据库对应
4、定义dao和其接口
(1)接口dao包:对daoimlents包进行抽象(为了增加dao的课扩展性)
//增加客户
//这里对数据库中的数据进行操作增删,加入sql语句
模板:
Connection conn =null;
PreStatement stmt = null;
ResultSet rs = null;
if(c==null)
//参数不对异常见还有NUllException,就是参数为空的时候
throw new IllegaException();
try{
conn=Jutil.getConnection();
stmt=conn.prepareStatement("sql语句");
stmt.setString(1,c.getName());
.
.
.
.
stmt.getexcuteUpdate();
}catch(Exception e){
throw new DaoException(e);
}finally{
Jtuil.release(*,*,*);*参数名字
}
void addCustomer(Customer c);
//根据id删除客户信息。名字体现要实现的功能
void delCustomerById( String customerId);
//更改客户的信息 IdIsNullException如果参数id为null,则抛出异常
//建立异常包,命名IdIsNullException类继承Exception
void updateCustomer(Customer c) throw IdIsNullException;
//查询所有用户信息
List<Customer> findAll();
//根据客户id查询客户信息(单个某个客户)
Customer findCustomerById(String customerId);
注意;
查询方法还可拓展,比如根据用户的其他爱好,地址,等信息进行查找用户
(2)daoimlents包对dao具体实现,就是功能的实现在此书写,
四大方法增删改查
daoimlents implements dao{}
5、建立与数据库连接的Jutil包
其中书写Jutil类
两个方法:
//书写数据链接
//为增加扩展性一般情况,代码中的String字符串都写在properties配置文件中,Class.forname("com.mysql.jdbc.Driver");
//建立properties文本,然后写入
className=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/databaseName
user=root
password=123456
建立读取此文本的方法
InputSteam in= Jutil.class.getClassLoader.getReSourseAsStream("propertiesname.properties");
Properties pro = new Properties();
pro.load(in);
url=pro.getProperties("url");
password=pro.getProperties("password");
user=pro.getProperties("user");
className=pro.getProperties("className");
public static Connection getConnection(){}
//书写资源释放
public static void relase(ResultSet st,Statement st,Connection conn){}
6、书写模板位置
7、测试
java.lang.NoClassDefFoundError: Could not initialize class com.Jutil.Jutil
at com.daoImpl.CustomerDaoImpl.addCustomer(CustomerDaoImpl.java:44)
at com.test.CustomerDaoImplTest.testAddCustomer(CustomerDaoImplTest.java:30)
数据库名字与javabean的名字不同,配置文件名字不同,没有把jar包变成buildpath
8、业务层搭建
建立service接口
书写service实现
因为业务层调用dao层
private CustomerDao dao= new CustomerDaoImpl();
9、servlet和jsp书写
打开web.xml将servlet设为主页
servlet调用service所以需要
private Service s = new ServiceImpl();
servlet 建立显示所有信息的界面的连接
List<Customer> cs = s.findAll();
request.setAttribute("cs",cs);
request.getRequestDispathcher("/listshow.jsp").forword(request,response);
Jsp+servlet+mysql搭建套路的更多相关文章
- jsp+servlet+mysql 实现简单的银行登录转账功能
jsp+servlet+mysql 实现简单的银行登录转账功能 [前期的准备] html(登录界面),servlet(处理业务逻辑),jsp(主要实现界面),mysql(实现与数据库的简单的交互)先从 ...
- Eclipse JSP/Servlet 环境搭建
Eclipse JSP/Servlet 环境搭建 本文假定你已安装了 JDK 环境,如未安装,可参阅 Java 开发环境配置. 我们可以使用 Eclipse 来搭建 JSP 开发环境,首先我们分别下载 ...
- JSP-Runood:Eclipse JSP/Servlet 环境搭建
ylbtech-JSP-Runood:Eclipse JSP/Servlet 环境搭建 1.返回顶部 1. Eclipse JSP/Servlet 环境搭建 本文假定你已安装了 JDK 环境,如未安装 ...
- (详细)Eclips+jsp+servlet+mysql+登录实例+源代码
欢迎任何形式的转载,但请务必注明出处. 该教程较全,从软件的安装以及相关的环境配置我都放置了相关教程的链接,读者可直接点击进入.自己写电商网站作业时查找了很多资料,但都不是很全,所以趁着寒假写了这份教 ...
- JSP+Servlet+mysql简单示例【图文教程】
下载MYSQL:http://dev.mysql.com/downloads/ 下载安装版的 然后安装(安装步骤就不详细说了) 安装好之后,点击托盘图标,打开管理工具 创建一个数据库 数据库的名字 ...
- jsp/servlet/mysql/linux基本概念和操作
一.什么是OOP编程? 面向对象,以结果为导向,并封装整个过程,并尽可能地增加代码的复用性和可扩展性...... 二.Junit? JUnit是一个java语言的单元测试框架.Junit测试时程序员测 ...
- jsp+servlet+mysql增删改查
用的IntelliJ IDEA开发的,jdk1.8 1 首先是项目结构,如下图所示 2看各层的代码 首先是web.xml <?xml version="1.0" encodi ...
- jsp+servlet+mysql简单实现用户登陆注册
原码,项目中遇到的错误,解决方法,文章最后有链接可以获取 项目简介 *有的网友说在修改和删除时会触发error,建议各位不要去把用户名命名为中文! 功能描述 登陆,注册,用户一览表,修改,删除,添加, ...
- 基于JSP servlet mysql 的登陆页面
数据库中建表: login.jsp <%@ page language="java" contentType="text/html; charset=UTF-8&q ...
随机推荐
- Docker-删除untagged docker images
故障描述 [root@entel1 ~]# docker rmi entel_zmc_images:zmc_base Untagged: entel_zmc_images:zmc_base 操作步骤 ...
- Python修改文件的两种方法
目录: 一.以占用内存的方式修改文件 二.以占用硬盘的方式修改文件 引言 文件修改的方法从操作方式上大致可以分为两类,一种是以占用电脑内存的方式,将文件读取到内存中修改再存回硬盘:第二种方法是分别打开 ...
- Anaconda中python加入环境变量
1.我的电脑---高级系统设置 2.选中环境变量,保存. 3.在系统环境变量PATH中,加入Anaconda3及Script路径加入其中 4.测试python
- MyBatis传入参数
在MyBatis的select.insert.update.delete这些元素中都提到了parameterType这个属性.MyBatis现在可以使用的parameterType有基本数据类型和Ja ...
- Golang 获取MD5的方法
import ( "crypto/md5" "encoding/hex" ) //生成32位md5字串 func Md5(s string) string { ...
- Git操作的一些注意
这是在在学习Git时遇到的一些需要注意的地方,都是一些小细节的地方,可能会有错误的地方,希望大家可以指出谢谢 1.git使用,安装后,首先要打开git bash 2.必须登录后才可以操作git ...
- 转-git 配置用户名和邮箱
原址:http://www.cnblogs.com/fsong/p/5540840.html 在安装了git for windows之后,个人总是忘记配置git config的命令,以此记录一下: 配 ...
- jquery获取input file的文件名,具有兼容性
var str=$(this).val();var arr=str.split('\\');//注split可以用字符或字符串分割var fileName=arr[arr.length-1];//这就 ...
- Matrix(二分套二分)
Matrix http://poj.org/problem?id=3685 Time Limit: 6000MS Memory Limit: 65536K Total Submissions: 8 ...
- 利用python实现二分法和斐波那契序列
利用python实现二分法:我的实现思路如下 1.判断要查找的值是否大于最大值,如果大于则直接返回False 2.判断要查找的值是否小于最小值,如果小于则直接返回False 3.如果要查找的值在最大值 ...