你现在所在的位置是:
订单管理页面
```
5. 数据库采用MyBatis,连接数据库采用JDBC,并且使用连接池来,执行SQL语句是使用PreparedStatement防止SQL注入(${}是插入字符串,包含"dsadsadsa",而#{}利用占位符,将数据插至对应""位置中),返回的结果ResultSet对象接收,通过反射来将数据库对应字段的数据填充至Java对象中的对应属性当中
6. 登录注销模块添加了拦截器,实现拦截未登录用户去查看或操作某些模块
7. 用户管理、订单管理以及供应商管理模块中,查询在dao实现类中采用字符串StringBuffer进行SQL拼接来实现模糊查询
```java
//根据用户名或角色查询用户总数[最难理解的SQL语句]
@Override
public int getUserCount(Connection conn, String username, int userRole) throws SQLException {
PreparedStatement ps = null;
ResultSet rs = null;
int resultCount = 0;
if(conn != null) {
//使用字符串拼接(StringBuffer是多线程的,性能较StringBuilder差一点)
StringBuffer sql = new StringBuffer();
sql.append("SELECT count(*) as count FROM smbms_user u, smbms_role r WHERE u.userRole = r.id");
//存放参数
ArrayList