目录
1.javabean
- JavaBean(豌豆)是一种Java语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBean通过提供符合一致性设计模式的公共方法将内部域暴露成员属性。众所周知,属性名符合这种模式,其他Java类可以通过自身机制发现和操作这些JavaBean属性。
- 换句话说,javabean就是一个Java的类,只不过这个类你要按上面提到的一些规则来写,比如必须是公共的,无参构造函数等,使开发效率提高。
2,三层结构
- 为什么需要分层: 业务处理的代码与JSP代码混在一起,不易阅读,不易于代码维
2. 分层模式
- 分层模式是最常见的一种架构模式
- 分层模式是很多架构模式的基础
3.分层
- 将解决方案的组件分隔到不同的层中
- 在同一个层中组件之间保持内聚性
- 层与层之间保持松耦合
4.三层模式的划分
- 表示层
- 业务逻辑层
- 数据库访问层

4.分层在eclipse类的目录结构
5,表示层依赖于业务逻辑层, 业务逻辑层依赖于数据访问层
6,分层实现用户登录,创建用户实体类
public class User {
private int id;
private String uname;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
…省略了后续的set/get方法
}
7,编写数据访问层
1,数据访问接口
public interface UserDao {
//登录
int login(User user);
}
2,数据访问接口的实现
public class NewsDao implements INewsDao{
private Connection con;
private PreparedStatement ps;
private ResultSet rs;
private String sql;
private boolean flag;
private News news;
private List<News> listNews;
private int n;
private int maxPage;//最大页码/总页码
@Override
public List<News> query() {
try {
listNews = new ArrayList<>();
con = DBhelper.getCon();
sql = "select nid,sid,title,author,summary,filename,content,addtime from news";
ps = con.prepareStatement(sql);
rs = ps.executeQuery();
while (rs.next()) {
news = new News(rs.getInt("nid"), rs.getInt("sid"),rs.getString("title") ,rs.getString("author") ,rs.getString("summary"), rs.getString("content"),rs.getString("addtime"));
listNews.add(news);
}
DBhelper.closeObj(con, ps, rs);
} catch (Exception e) {
e.printStackTrace();
}
return listNews;
}
8,编写业务逻辑层
1,编写业务逻辑层接口
public interface IUserBiz {
/**
* 登录方法
* @param user
* @return
*/
int login(User user);
}
2,编写业务逻辑层接口实现
public class UserBiz implements IUserBiz{
//在业务逻辑层biz里面调用数据层dao
IUserDao iud=new UserDao();//里氏替换原则
@Override
public int login(User user) {
return iud.login(user);
}
}
3.高内聚,低耦合
1.高内聚和低耦合的概念
内聚:高内聚就是一个模块内各个元素彼此结合的紧密程度高。
耦合:一个软件结构内不同模块之间互连程度的度量(耦合性也叫块间联系,指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差,模块间耦合的高低取决于模块间接口的复杂性,调用的方式以及传递的信息)。
2.为什么要追求高内聚和低耦合?
软件架构设计的目的简单说就是在保持软件内在联系的前提下,分解软件系统,降低软件系统开发的复杂性,而分解软件系统的基本方法无外乎分层和分割。