`

smile开发类库——绪论

阅读更多
                                    绪   论

Smile类库是由胡真山在空闲时间开发的一个封装了一些java开发中常用的一些功能的类库。该类库是一个简单、小巧、实用的常用类库,让发开中的一些操作变简单。之所以取名为smile就是希望开发人员能够开心的使用开发中的一些常用功能,使开发的时候面带微笑。

该类库主要包含的内容有以下几个方面:
1、 json的操作:json的解析及转换。
    可以把javabean、map、list、Array转为json字符串。
    也可以把json字符串解析成JSONObject、JSONArray

2、 数据库操作类库
   数据库的查询、批量执行、以javabean形式插入对象到数据库中,插入map到数据库中,  分页查询数据库

3、 一个小简单的数据源实现。
   实现了一个datasource接口,可以通过配置文件配置数据源

4、 Jsongetway 的实现
Jsongetway  servlet,通过smile中实现的beanutils 对和json  对数据进行转换处理

5、 Jsp分页标签
      一个jsp分页的标签库
6、 Beanutils 工具类

7、 一个简单的MVC框架strate

    一个简单的MVC框架,配置文件方式和struts2非常的相似

8、 其它的一些工具类

   
我将会开以后的文章中分别对其中的功能进行详细的讲解,开此先展示几个简单的小功能。

例一: 分页查询数据库:
   
Action中的代码:


 
public String queryAllUser() throws Exception{
		userService.queryAllUser(new JspTagsPager(request));
		return "success";
}


javaDao 中的代码 Dialect.HSQL 是hsql数据库 如是oralce数据库
则用Dialect.ORACLE
public PageModel queryAllUser(Pager pager) throws SQLException {
		StringBuffer sql=new StringBuffer("select * from Test where 1=1 ");
		String name=pager.getRequest().getParameter("name");
		if(name!=null&&!"".equals(name.trim())){
			sql.append(" and name like '%"+name+"%'");
		}
		return PagerQueryUtils.queryPageSQL(ds.getConnection(),sql.toString(),pager,Dialect.HSQL);
	}


Spring 中配置
<bean id="dataSource" class="org.smile.db.DataSourceBean">
		<property name="name">
			<value>jdbc/hsql</value>
		</property>
	</bean>
	<bean id="userDAO" class="dao.UserDAO">
		<property name="ds">
			<ref bean="dataSource"/>
		</property>
	</bean>
	<bean id="userService" class="service.UserService">
		<property name="userDAO">
			<ref bean="userDAO"/>
		</property>
	</bean>
	<bean id="userAction" class="action.UserAction">
		<property name="userService">
			<ref bean="userService"/>
		</property>
	</bean>


strate.xml 配置文件中的配置(这里是使用smile中的strate MVC 框架 )

<?xml version="1.0" encoding="UTF-8"?>
<strate>
	<package namespace="/jsp/">
		<action name="queryAllUserAction" class="userAction" method="queryAllUser">
			<forward name="success" type="forward">/jsp/result.jsp</forward>
		</action>
	</package>
</strate>


Jsp 页面代码:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://smile.org/jsp/jstl/tag/pager" prefix="pg" %>
<table>
  	<tr><td>ID</td><td>名称</td><td>年龄</td></tr>
    <c:forEach items="${pageModel.rows}" var="v">
    	<tr>
    		<td>${v.id }</td><td> ${v.name }</td><td>${v.age }</td>
    		</tr>
	</c:forEach>
	</table>
	 <pg:pager url="${path}/jsp/queryAllUserAction.do" maxPageItems="${pageModel.size}" items="${pageModel.total}">
		<pg:common />
	 </pg:pager>

这样就是一个分页查询数据库的例子了。
    【注】对于smile中相关的配置文件我在smile-1.0.jar中的META-INF目录下都有例子配置文件
1
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics