最近在做基于mongodb的spring项目架构,有个问题跟大家分享一下,也方便自己以后能够用到 先看一个简单的项目架构: 在架构方面唯一需要说的是采用的是spring的注解: 下面是部分代码,部分。 /** * @author jessonlv * 用户注册接口 */ @Controller@Request
最近在做基于mongodb的spring项目架构,有个问题跟大家分享一下,也方便自己以后能够用到
先看一个简单的项目架构:

在架构方面唯一需要说的是采用的是spring的注解:
下面是部分代码,部分。
/**
* @author jessonlv
* 用户注册接口
*/
<strong>@Controller
@RequestMapping("/user")</strong>
public class UserInfoController {
@Autowired
private UserInfoManager userManager;
//接口文档
<strong>@RequestMapping(method=RequestMethod.GET)</strong>
public String list(HttpServletRequest request,HttpServletResponse response){
response.setContentType("text/html;charset=utf-8");
return "user";
}
//检测用户信息-根据帐户
<strong>@RequestMapping(value="/check",method=RequestMethod.GET)
</strong> public String getUser(HttpServletRequest request,HttpServletResponse response) throws Exception{
//设置HTTP头
response.setContentType("text/html;charset=utf-8");
//参数获取
String account=StringUtil.formatStringParameter(request.getParameter("account"), null);
String key=StringUtil.formatStringParameter(request.getParameter("key"), null);//验证调用方
//参数有效性验证
if(account==null){
throw new ParameterException();
}
//TODO:key验证
//查询对象
BasicDBObject o=new BasicDBObject("account",account);
try {
//取数据库
DBObject doc=userManager.getUserInfo(o);
//输出结果
PrintWriter writer=response.getWriter();
writer.write(doc.toString());
} catch (Exception e) {
e.printStackTrace();
//输出结果
PrintWriter writer=response.getWriter();
writer.write(new BasicDBObject().toString());
}
//db.find(query).skip(pos).limit(pagesize)分页
return null;
}采用mongodb的最大好处中的其中一个就是不用写bean,只需做一些简单的配置
我们看spring-servlet.xml 的配置内容
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:util="http://www.springframework.org/schema/util" xmlns:p="http://www.springframework.org/schema/p"
xmlns:cache="http://www.springframework.org/schema/cache" xmlns:jee="http://www.springframework.org/schema/jee"
xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:tool="http://www.springframework.org/schema/tool"
xsi:schemaLocation="
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.1.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.1.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd
http://www.springframework.org/schema/tool http://www.springframework.org/schema/tool/spring-tool-3.1.xsd
http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache-3.1.xsd"
default-autowire="byName" default-lazy-init="true">
<context:annotation-config />
<context:component-scan base-package="com.ishowchina.user" />
<!-- 启动Spring MVC的注解功能,完成请求和注解POJO的映射 -->
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver"
p:prefix="/" p:suffix=".html" />
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver"
p:defaultEncoding="utf-8" />
<!-- 支持json -->
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"></bean>
</list>
</property>
</bean>
<!-- 导入配置文件 -->
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath:appconfig.properties</value>
</list>
</property>
</bean>
<!-- 数据源 -->
<bean id="dataSource" class="com.ishowchina.user.dao.DataSource">
<property name="ip" value="localhost"/>
<property name="port" value="27017"/>
</bean>
<bean id="userDao" class="com.ishowchina.user.dao.impl.UserInfoDaoImpl">
<property name="dbName" value="prop"/>
<property name="tableName" value="userinfo"/>
<property name="dataSource" ref="dataSource"/>
</bean>
<bean id="stationDao" class="com.ishowchina.user.dao.impl.StationInfoDaoImpl">
<property name="dbName" value="prop"/>
<property name="tableName" value="stationinfo"/>
<property name="dataSource" ref="dataSource"/>
</bean>
</beans>
如果您是新用户,请直接将本程序的所有文件上传在任一文件夹下,Rewrite 目录下放置了伪静态规则和筛选器,可将规则添加进IIS,即可正常使用,不用进行任何设置;(可修改图片等)默认的管理员用户名、密码和验证码都是:yeesen系统默认关闭,请上传后登陆后台点击“核心管理”里操作如下:进入“配置管理”中的&ld
0
道理其实还是和bean是一样的,这在项目启动的前期都已经映射了。每写一个dao就配置一个
接口的输出结果也很简单:DBObject myDocDbObject = userManager.getUserInfo(repeatAccount);
String str = myDocDbObject.toString(); 是一个json格式的字符。
呵呵,做个小总结,方便忘记了。
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号