夜光序言:
美丽坚强的微笑,即使是在残酷的战争中也不会逝去。那样普通却在血雨中那么绚烂,宛如朝阳,清澈明亮~~
正文:
使用jdbc查询数据库mysql中的表
insert into flower VALUES(2,'菊花',3,'美国');
我们用sql语句写一些数据到数据库
夜光:在实际开发中:jdk和tomcat版本要选仔细点,否则会出现很多意料之外的东西报错
夜光开发核心点:
编程还是要按照规范来走
- 持久层:dao,persist,mapper
- 实体:rojo,entity,model,bean,javabean
- 业务逻辑:service,biz
- 控制器:controller,action【在struts2里面就有这个】,servlet,web【叫这个的也很多】
- 过滤器:filter
- 异常:exception
- 监听器:listener
现在我们既然学的是mybatis,那么可以用mapper,推荐使用这个
- 注释:分为多行注释和单行注释
- 类:要形成大驼峰
- 方法,属性:形成小驼峰
我们学习编程,在做开发最喜欢报异常,这样就可以对症下药,如果不报异常,没结果,就尴尬了,纯靠猜测...............
MVC开发模式
M:代表模型,在我们项目中,哪些是代表模型
实体类和业务和dao
view:视图,我们使用的是jsp
C:controller,控制器,我们用的是servlet
存在意义:
视图和逻辑分离
MVC适用场景:大型项目开发
一般开发逻辑:
我们都是从底层开始写,越往底层复用越高,这一点很帅~~
我们做项目,会发现越到后面,Dao的一些代码就不用写了~~
直接调用就完事了,一次不行,来两次
public class FlowerServiceImpl implements FlowerService{
//夜光:因为我们会频繁调用,所以这里就设计成全局的~~
//防止别人使用~~
private FlowerDao flowerDao = new FlowerDaoImpl();
@Override
public List<Flower> show() {
//夜光:这个里面写个七八百行很正常,涉及到业务
return flowerDao.selALL();
}
}
之所以有下划线,因为没有保存之前一个类,我们要知道保存嗯,导致现在写的查询不到相应的方法~~
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="Content-Type ; charset=utf-8" >
</head>
<body>
<!-- 夜光:下面我们开始设计一下页面元素嗯 -->
<table border="1">
<tr>花朵编号</tr>
<tr>花朵名称</tr>
<tr>价格(元)</tr>
<tr>原产地</tr>
<!-- 夜光:下面要和数据库进行关联 -->
<c:forEach items="${list }" var="flower">
<tr>
<td>${flower.id }</td>
<td>${flower.name }</td>
<td>${flower.price }</td>
<td>${flower.production }</td>
</tr>
</c:forEach>
</table>
<a href="#">添加花朵信息</a>
</body>
</html>