首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

jQuery(8)-jQuery中googlesuggest的实现(数据库调用@Hibernate+struts2)

2013-10-21 
jQuery(8)---jQuery中googlesuggest的实现(数据库调用@Hibernate+struts2)页面如下:核心源码如下:suggest.

jQuery(8)---jQuery中googlesuggest的实现(数据库调用@Hibernate+struts2)

页面如下:

jQuery(8)-jQuery中googlesuggest的实现(数据库调用@Hibernate+struts2)

核心源码如下:

suggest.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%String path = request.getContextPath();String basePath = request.getScheme() + "://"+ request.getServerName() + ":" + request.getServerPort()+ path + "/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><base href="<%=basePath%>"><title>My JSP 'suggest.jsp' starting page</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><!--<link rel="stylesheet" type="text/css" href="styles.css">--><script type="text/javascript"src="${ pageContext.request.contextPath}/js/jquery-1.9.1.js"></script><script type="text/javascript"src="${ pageContext.request.contextPath}/js/suggest.js"></script><style type="text/css">.s_ipt {width: 405px;height: 30px;font: 16px/ 22px arial;margin: 5px 0 0 7px;background: #fff;outline: 0;-webkit-appearance: none;}.s_wds {width: 405px;height: 200px;font: 16px/ 22px arial;background: #fff;display: none;}</style></head><body><div align="center"><h2>jQuery中googlesuggest的实现</h2><hr/><div><input type="text" id="keyword" class="s_ipt" />  <input type="button" value="百度一下" /></div><div><select id="words" multiple="multiple" size="10" class="s_wds"></select>            </div></div></body></html>

suggest.js

$(document).ready(function() {// 给input输入框注册 keyup事件$("#keyword").bind("keyup", function() {$("#words").show();// 获取收入的值var keyVal = $(this).val();if ("" == keyVal) {// 清空$("#words").empty().hide();// 对象链式操作return;}// 发送ajax请求$.post("./csdn/UserAction_keyVals.action?time=" + new Date().getTime(),{keyword : keyVal}, function(data) {// 清空$("#words").empty();// 获取所有的相关的数据var jsonusers = data.users;// 遍历数组for (var i = 0; i < jsonusers.length; i++) {// 得到具体的user对象var jsonuser = jsonusers[i];// 创建optionvar $optu = $("<option></option>");// 设置文本$optu.text(jsonuser.name);// 把创建的option添加到select中$("#words").append($optu).show();}}, "json");});$("#words").bind("dblclick", function() {$("#keyword").val($(this).val());$("#words").empty().hide();});$("#words").bind("keyup", function(event) {var key = event.which;if (key == 13) {$("#keyword").val($(this).val());$("#words").empty().hide();}});});


User.java

package www.csdn.project.domain;public class User {private String name;private Integer id;public String getName() {return name;}public void setName(String name) {this.name = name;}public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public User(String name, Integer id) {super();this.name = name;this.id = id;}public User() {super();// TODO Auto-generated constructor stub}}


User.hbm.xml

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE hibernate-mapping PUBLIC     "-//Hibernate/Hibernate Mapping DTD 3.0//EN"    "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"><hibernate-mapping package="www.csdn.project.domain">   <class name="User" catalog="csdn" table="user">        <id column="id" name="id" type="java.lang.Integer">          <generator class="native"></generator>        </id>        <property name="name" column="name" type="java.lang.String" length="60" unique="true" not-null="true"/>           </class></hibernate-mapping>


UserDAO.java接口

package www.csdn.project.dao;import java.util.List;import www.csdn.project.domain.User;public interface UserDAO extends BaseDAO<User, Integer>{/** * 验证用户名是否存在 *  * @param name * @param className * @return */public boolean checkName(String name, Class className);/** * 根据关键字查询用户信息 * @param keyword * @param className * @return */public List<User> findByKeyVal(String keyword, Class className);}


UserDaoImpl.java

package www.csdn.project.dao;import java.util.List;import org.hibernate.criterion.Restrictions;import www.csdn.project.domain.User;import www.csdn.project.util.BaseHibernateDAO;import www.csdn.project.util.HiberSessionFactory;public class UserDAOImpl extends BaseHibernateDAO implements UserDAO{@SuppressWarnings("unchecked")public boolean checkName(String name, Class className) {boolean flag=false;try{@SuppressWarnings("unused")User user=(User) getSession().createCriteria(className).add(Restrictions.eq("name",name)).uniqueResult();if(user!=null){flag = true;}}catch(Exception e){e.printStackTrace();}finally{HiberSessionFactory.closeSession();}return flag;}@SuppressWarnings("unchecked")public List<User> findByKeyVal(String keyword, Class className) {List<User> users=null;try{users=getSession().createCriteria(className).add(Restrictions.like("name", keyword+"%")).list();}catch(Exception e){e.printStackTrace();}finally{HiberSessionFactory.closeSession();}return users;}public void deleteObject(User entity) {// TODO Auto-generated method stub}public void deleteObjectById(Integer id) {// TODO Auto-generated method stub}public List<User> getAllObjects(Class<User> entityClass) {// TODO Auto-generated method stubreturn null;}public User getObjectById(Class<User> entityClass, Integer id) {// TODO Auto-generated method stubreturn null;}public User loadObjectById(Class<User> entityClass, Integer id) {// TODO Auto-generated method stubreturn null;}public void saveObject(User entity) {// TODO Auto-generated method stub}public void updateObject(User entity) {// TODO Auto-generated method stub}}

UserAction.java

package www.csdn.project.action;import java.util.List;import www.csdn.project.domain.User;import www.csdn.project.service.UserService;import www.csdn.project.service.UserServiceImpl;import com.opensymphony.xwork2.ActionSupport;public class UserAction extends ActionSupport {// 业务对象private UserService userService = new UserServiceImpl();// 用户名称private String name;// 判断用户名称后返回的信息private String msg;// 关键字private String keyword;private List<User> users;public String getName() {return name;}public void setName(String name) {this.name = name;}public String getMsg() {return msg;}public void setMsg(String msg) {this.msg = msg;}public String getKeyword() {return keyword;}public void setKeyword(String keyword) {this.keyword = keyword;}public List<User> getUsers() {return users;}public void setUsers(List<User> users) {this.users = users;}public String checkName() {// 业务查询操作boolean flag = userService.checkName(name, User.class);if (flag) {msg = "用户名已经存在";} else {msg = "用户名可以使用";}return "checkName";}// 通过关键字查询的方法public String keyVals() {users = userService.findByKeyVal(keyword, User.class);return "keyVals";}}


struts.xml

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN""http://struts.apache.org/dtds/struts-2.3.dtd"><struts><!--<include file="www/csdn/project/resource/struts-constant.xml" />--><include file="strutsppc.xml"></include><package name="tests" namespace="/csdn" extends="json-default"><action name="UserAction_*" class="www.csdn.project.action.UserAction"method="{1}"><result name="checkName" type="json">    <param name="root">msg</param></result><result name="keyVals" type="json"><param name="includeProperties">users\[\d+\]\.name</param></result><result name="input">/index.jsp</result></action></package></struts>


hibernate.cfg.xml

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE hibernate-configuration PUBLIC"-//Hibernate/Hibernate Configuration DTD 3.0//EN""http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"><hibernate-configuration><session-factory><property name="myeclipse.connection.profile">localhost</property><property name="connection.url">jdbc:mysql://localhost:3306/csdn</property><property name="connection.username">root</property><property name="connection.password">root</property><property name="connection.driver_class">com.mysql.jdbc.Driver</property><property name="dialect">org.hibernate.dialect.MySQLDialect</property><property name="show_sql">true</property><mapping resource="www/csdn/project/domain/City.hbm.xml" /><mapping resource="www/csdn/project/domain/Country.hbm.xml" /><mapping resource="www/csdn/project/domain/Province.hbm.xml" /><mapping resource="www/csdn/project/domain/User.hbm.xml" /></session-factory></hibernate-configuration>




 

热点排行