码迷,mamicode.com
首页 > 数据库 > 详细

基于JSP+Serlvet+JDBC的开发(1)

时间:2015-09-13 13:17:53      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:

好久没用JSP+Servlet+JDBC这种组合,可以说自从没有这种作业后就没有这种方式开发了。最近也没怎么学东西,感觉计划都乱了,趁着这个周末写点东西找找感觉。

这次想利用JSP+Servlet+JDBC写个小小的商品展示平台DEMO。功能很简单,就是能够展示商品的类型,然后根据类型展示所属类型的商品就可以了,说是小小的商品展示平台还不如说是一个增删查改的DEMO。

下图是整个项目的结构:

技术分享

 

为了方便解耦,使用MVC模式进行开发,这里介绍各个包的作用:

  1. action 存放的servlet类,负责处理客户端的请求
  2. dao 存放数据持久层的接口规范
  3. dao.impl 存放数据持久层接口的实现
  4. service 存放业务逻辑接口
  5. service.impl 存放业务逻辑接口的实现
  6. model 存放的是实体类
  7. util 存放的是工具类
  8. test 存放的是测试类

WebContent 下的各个目录:

  1. resources 存放一些资源文件,如css,js,image等。
  2. WEB-INF/jsp 存放所有的jsp页面,将jsp存放在WEB-INF下是为安全起见,因为存放在WEB-INF目录下的jsp是无法通过URL直接访问的。

这就是整个项目的结构。

 

由于是小小DEMO。不想弄的太复杂,整个项目目前设计两个实体类:Type (商品类型)、Goods (商品)

这里的实体类采用贫血模式,不包含业务逻辑。

下面是两个类的代码:

Type.java

 1 package model;
 2 
 3 /*
 4  * 类型实体
 5  */
 6 public class Type {
 7 
 8     private Long id;
 9     private String name;
10 
11     public Long getId() {
12         return id;
13     }
14 
15     public void setId(Long id) {
16         this.id = id;
17     }
18 
19     public String getName() {
20         return name;
21     }
22 
23     public void setName(String name) {
24         this.name = name;
25     }
26 
27     @Override
28     public String toString() {
29         return "Type [id=" + id + ", name=" + name + "]";
30     }
31 }

Goods.java

 1 package model;
 2 
 3 /*
 4  * 商品实体
 5  */
 6 public class Goods {
 7 
 8     private Long id;
 9     private String name;
10     private Double price;
11     private Long tid; // 商品类型(外键)
12 
13     public Long getId() {
14         return id;
15     }
16 
17     public void setId(Long id) {
18         this.id = id;
19     }
20 
21     public String getName() {
22         return name;
23     }
24 
25     public void setName(String name) {
26         this.name = name;
27     }
28 
29     public Double getPrice() {
30         return price;
31     }
32 
33     public void setPrice(Double price) {
34         this.price = price;
35     }
36 
37     public Long getTid() {
38         return tid;
39     }
40 
41     public void setTid(Long tid) {
42         this.tid = tid;
43     }
44 
45     @Override
46     public String toString() {
47         return "Goods [id=" + id + ", name=" + name + ", price=" + price + ", tid=" + tid + "]";
48     }
49 }

我一般在自己开发的时候习惯先把静态页面先弄好,然后把静态的部分改成动态的就可以了,毕竟这事没有前台帮你做。

这里我利用HBuilder先把展示页面写好了,仅仅是为了展示,所有就没有加上CSS修饰了,界面看起来丑得不是有一点。

下面是商品类型展示页面:

 1 <!DOCTYPE html>
 2 <html>
 3     <head>
 4         <meta charset="utf-8">
 5         <title>商品展示平台</title>
 6     </head>
 7     <body>
 8         <div>
 9             <div><a href="">添加商品类型</a></div>
10             <!--
11                 作者:itc10@qq.com
12                 时间:2015-09-13
13                 描述:这些展示内容将被替换成动态的信息
14             -->
15             <div>家电</div>
16             <div>数码</div>
17         </div>
18     </body>
19 </html>

商品展示页面:

 1 <!DOCTYPE html>
 2 <html>
 3 
 4     <head>
 5         <meta charset="utf-8">
 6         <title>商品</title>
 7     </head>
 8 
 9     <body>
10         <div>
11             <div><a href="">添加商品</a></div>
12             <!--
13                 作者:itc10@qq.com
14                 时间:2015-09-13
15                 描述:这些展示内容将被替换成动态的信息
16             -->
17             <table>
18                 <tr>
19                     <th>序号</th>
20                     <th>商品名称</th>
21                     <th>价格</th>
22                 </tr>
23                 <tr>
24                     <td>1</td>
25                     <td>电风扇</td>
26                     <td>998</td>
27                 </tr>
28             </table>
29         </div>
30     </body>
31 
32 </html>

运行界面如下:

 

技术分享

技术分享

这仅仅是静态页面的展示,这里我把动态展示这些信息放在了下一篇博文了。

基于JSP+Serlvet+JDBC的开发(1)

标签:

原文地址:http://www.cnblogs.com/itc10/p/4804594.html

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