HTML:
<input value="" type="text" style="width: 100%;" id="trueName" name="trueName" />
JavaScript:
$("#trueName").autocomplete({
source: 'usersInfoList.do'
});
Controller:
@RequestMapping(method = RequestMethod.GET, value = "/usersInfoList.do")
public @ResponseBody Map<String,String> userTrueNmae(
HttpServletRequest request,
HttpServletResponse response,
ModelMap model) {
LOGGER.debug("联想查询用户信息");
String method = request.getMethod();
ActivityModelMap modelMap = new ActivityModelMap(request);
Map<String,String> trueName = usersService.userInfoList(model, method, request, modelMap);
return trueName;
}
Service
public Map<String, String> userInfoList(ModelMap model, String method,
HttpServletRequest request,
ActivityModelMap modelMap) {
LOGGER.debug("Service层:联想查询用户信息");
List<Users> usersList = new ArrayList<Users>();
String term = request.getParameter("term");
if (!StringUtils.isBlank(term)) {
usersList = usersDao.getUserInfoByTrueName(term);
}
Map<String,String> usersMap = new HashMap<String,String>();
if(usersList != null && usersList.size()>0){
for(Users us : usersList){
usersMap.put(us.getTrueName(), us.getTrueName()+"["+us.getUserName()+"]"+"||"+us.getDeptName());
}
}
return usersMap;
}
DAO:
public List<Users> getUserInfoByTrueName(String trueName) {
LOGGER.debug("Dao层:联想查询用户的真实姓名");
return getSqlSession().selectList("usersDao.getUserInfoByTrueName",trueName);
}
Mybatis: <select id="getUserInfoByTrueName" resultType="Users"
resultMap="userInfoResult" parameterType="String">
SELECT orz.DEPARTMENT_NAME, u.TRUE_NAME,u.USER_NAME
from users u ,
ORGANIZATION orz
<trim prefix="WHERE" prefixOverrides="AND | OR">
u.org_id = orz.DEPARTMENT_ID
<if test="_parameter !=null">
AND u.TRUE_NAME LIKE '%'||'${_parameter}'||'%'
</if>
</trim>
</select>
<select id="getUserInfoByTrueName" resultType="Users"
resultMap="userInfoResult" parameterType="String">
SELECT orz.DEPARTMENT_NAME, u.TRUE_NAME,u.USER_NAME
from users u ,
ORGANIZATION orz
<trim prefix="WHERE" prefixOverrides="AND | OR">
u.org_id = orz.DEPARTMENT_ID
<if test="_parameter !=null">
AND u.TRUE_NAME LIKE '%'||'${_parameter}'||'%'
</if>
</trim>
</select>
autocomplete详细参数请参考点击打开链接