javaWeb小项目
作为一个学习加Java的小白,非常开心能记录下自己的成长历程。技术有限,请见谅!
我主要学习的是Java后端,当我学着做了一个web小项目之后对javaee项目也有了初步见解!
老师说万物皆对象,万物皆增删改查。我的web小项目也仅仅实现了增删改查。
正文来了:
我将其分解为三个部分。数据存储,数据操作,数据显示。分别技术是:MySQL存储对象数据,Javaee对数据进行增删改查操作,html+ajax+jquery数据的绑定,显示,页面的呈现。
首先数据库部分:新建数据库和两张表,如下图:
这是一张菜单表,dishes是菜品表,id为主键,description为此表外键,dtype是菜品类别表id为主键。新建好之后进行sql语句的增删改查测试(主键设置自动递增,添加时不需要添加id,自动序列添加):
添加:insert into dishes (name,price,tid,img,description)values(\’红烧肉\’,8,\’1\’,\’肥而不腻\’);
查询:select d.*,t.name as tname from dishes d,dtype t where d.tid=t.id
修改:update dishes set name=\’红烧鱼\’,price=99,img=2,description=\’肉质鲜美\’,tid=1 where id=1;
删除:delete from dishes where id=1
基础语句如上述,javaee操作是会用到。要多添加几条数据用以测试。
第二部分,javaee后台编程:
1,新建javaweb项目,而后新建包,类等。为了整洁美观,采用分层架构。我是七层架构,如下图:
bean:实体类。对象属性,get,set,方法,tostring,构造函数。
dao:定义增删改查四个方法,如图:
dao.Impll:接口实现类,如图:
DishesResultSetHandler:集合中遍历对象属性。如图:
service:业务层,因为就增删改查,没什么业务,直接return dao层方法就是了。
servlet:处理客户端的请求,代码太多,简单举例吧:
DishesService service=new DishesServiceImpl();
Gson gson=new Gson();
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
System.out.println(request.getQueryString());
String type=request.getParameter(“type”);
switch (type) {
case “getDishesAll”:
getDishesAll(request,response);
break;
private void getDishesAll(HttpServletRequest request, HttpServletResponse response) {
ResponseBody rb=new ResponseBody();
rb.setData(service.getDishesAll());
try {
response.getWriter().write(gson.toJson(rb));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
tools:连接池和dbutils技术,如图有注解:
测试类:就是用了jUnit 5,test注解。就不贴图了。
druid.properties:新建文件,连接本地数据库,我是用的阿里云;
第三部分,前端。ok,到此为止,好像不能写了,字数到了应该。里面就是jQuery+Ajax,在就没有什么了。也可以网上找一个好看的HTML模板,然后用vue套,绑定数据,vue也有增删改查方法,很强大。官网看看就ok了。
好像还能写卧槽。贴个图光标没了,以为不能写了,也难得搬下来了,Java是一个很强大的东西,写起来感觉比c舒服一点,也不像PHP一样有点杂糅的感觉。这就是我写的一个小项目,里面很多功能都没有写。就好比登录,这又涉及到session,cokie,为了安全再次涉及到过滤器,监听器等等。
当然现在还只是一个小案例,都需要自己搭建环境,到后的spring框架,mvc框架等等主流框架之后,这一切都会变得很轻松。再到后的分布式集群,就给你更方便了,都不用自己操心,因为没那个条件和水平了。我也不知道说什么反正加油吧!