boke | 开始做后台系统了

开始开发后台管理系统,理清了需求后,接下来就开始动工了,开工大吉!

一 安装工具

安装Jdk,安装Tomcat,安装编辑器工具eclipse,这些安装过程基本没有什么问题,按照网上的安装步骤很快就装完啦。

二 搭建开发环境

搭建一个java web的开发环境,看起来很简单的需求,但是在网上找了无敌雷的一个视频教程后发现这样是最麻烦的,然后请教了一个同事,就直接在eclipse中新建javaweb项目,然后进行简单的配置,这些网上都有,建成后的项目目录如下:


因为准备的是前后端分离的开发模式,其实主要关注的还是src文件夹,这里面是所有后台开发的接口。

项目搭建成功后引入了一些jar包(没有用maven,所以很多地方都需要自己添加jar),主要的是springmvc和spring的一些包,还有一些日志文件和转换json需要的jar包,这个依据个人口味自行添加。总之框架搭建起来,然后配置好tomcat的服务,这些对于善于解决问题的我来说(机智)总算解决啦。

三 建数据库

在自己本机安装了mysql,然后自己建库建表,在程序中写了一个测试连接的添加流程。测试通过!(其实这个中间遇到了很多问题,但都自己一一度娘解决了。。。)

四 开始开发

根据模块,新建实体类,写一些操作数据库的方法,写service,然后在controller中调用调通,经过上面的数据库测试连接后这些流程都差不多,最难的地方应该是卡在了如何用对象操作数据库部分了,折腾了好久。下面贴出最主要但是当时也头疼的一段通用代码以供之后参考:

@Repository
public class UserDAO {
	@Resource
	private SessionFactory sessionFactory;

	private Session getSession() {
		return sessionFactory.getCurrentSession();
	}

	public User getUserById(String id) {
		return (User) this.getSession().createQuery("from User where id = ?").setParameter(0, id).uniqueResult();
	}

	public void addUser(User user) throws Exception {
		this.getSession().save(user);
	}

	public void updateUser(User user)throws Exception {
		this.getSession().update(user);
	}
    @SuppressWarnings("unchecked")
	public List<UserList> searchUserByParam(String param) throws Exception {
    	String sql = "SELECT * FROM (select a.uid,a.username,a.password,a.role,b.rId,b.rType,b.rName from users a ,user_role b where a.role = b.rId) AS alldata where username like '%"+param+"%' or rName LIKE '%"+param+"%'";  
		List<UserList> ulist = (List<UserList>) this.getSession().createSQLQuery(sql)  
			.addScalar("uid", StandardBasicTypes.STRING)  
		    .addScalar("username", StandardBasicTypes.STRING)  
		    .addScalar("password", StandardBasicTypes.STRING)  
		    .addScalar("role", StandardBasicTypes.INTEGER)  
		    .addScalar("rId", StandardBasicTypes.INTEGER)  
		    .addScalar("rType", StandardBasicTypes.STRING)  
		    .addScalar("rName", StandardBasicTypes.STRING)
		    .setResultTransformer(Transformers.aliasToBean(UserList.class)).list();  
		return ulist;
    }
	public void deleteUserById(String id) throws Exception {
		this.getSession().createQuery("delete User where id = ?").setParameter(0, id).executeUpdate();
	}

	@SuppressWarnings("unchecked")
	public List<UserList> getUsers() throws Exception {
		/*return (List<User>) this.getSession().createCriteria(User.class).list();*/
		String sql = "select * from users a,user_role b where a.role = b.rId";
		return this.getSession().createSQLQuery(sql)
				.addScalar("uid", StandardBasicTypes.STRING)  
			    .addScalar("username", StandardBasicTypes.STRING)  
			    .addScalar("password", StandardBasicTypes.STRING)  
			    .addScalar("role", StandardBasicTypes.INTEGER)  
			    .addScalar("rId", StandardBasicTypes.INTEGER)  
			    .addScalar("rType", StandardBasicTypes.STRING)  
			    .addScalar("rName", StandardBasicTypes.STRING)
			    .setResultTransformer(Transformers.aliasToBean(UserList.class)).list(); 
	}
}

五 测试

测试的问题因为没有写前端页面,所以请教了一下大乖同学,说是postman可以用来进行接口测试,所以就安装了一个chrome插件进行测试,中间工具不熟悉导致请求的json数据格式总是不对,最后仔细研究一下,总算知道了每个选项的意思偷笑

六 获奖感言

后台开发过程花费了3天左右的时间,成就感满满,以前在学校培训的那些经历也算是基础,所以理解起来也不难,好的开端是成功的一半(发现自己总是打鸡血)哈哈。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值