service

package cn.edu.hbcf.privilege.ws;

import javax.jws.WebParam;
import javax.jws.WebService; @WebService
public interface CxfSecuityService { String registerUser(@WebParam(name="userName")String userName,@WebParam(name="password") String password); }

serviceImpl

package cn.edu.hbcf.privilege.ws.impl;

import java.util.List;

import javax.annotation.Resource;
import javax.jws.WebService;
import javax.servlet.http.HttpSession;
import javax.xml.ws.WebServiceContext;
import javax.xml.ws.handler.MessageContext; import org.apache.commons.codec.digest.DigestUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import cn.edu.hbcf.common.vo.Criteria;
import cn.edu.hbcf.framework.dao.FrameworkMapper;
import cn.edu.hbcf.framework.pojo.APIKeyWebservice;
import cn.edu.hbcf.privilege.dao.BaseAPIKeysMapper;
import cn.edu.hbcf.privilege.pojo.BaseAPIKeys;
import cn.edu.hbcf.privilege.ws.CxfSecuityService; @Service
@WebService(serviceName = "cxfSecuityService", portName = "cxfSecuityServicePort", endpointInterface = "cn.edu.hbcf.privilege.ws.CxfSecuityService")
public class CxfSecuityServiceImpl implements CxfSecuityService{ @Resource
private WebServiceContext wsContext;
private MessageContext mc;
private HttpSession session; @Autowired
private BaseAPIKeysMapper keyMapper;
@Autowired
private FrameworkMapper frameWorkMapper; @Override
public String registerUser(String userName, String password) {
Criteria criteria = new Criteria();
criteria.put("keyName", userName);
List<BaseAPIKeys> keysList = keyMapper.selectByExample(criteria);
if (!keysList.isEmpty()) {
BaseAPIKeys userKey = keysList.get(0);
password = DigestUtils.md5Hex(password);
if (password.equals(userKey.getKeyPassword())) {
mc = wsContext.getMessageContext(); session = ((javax.servlet.http.HttpServletRequest) mc
.get(MessageContext.SERVLET_REQUEST)).getSession(); ((javax.servlet.ServletContext) mc
.get(MessageContext.SERVLET_CONTEXT)) .setAttribute(
"session", session);
session.setAttribute("msg", "ok");
criteria.clear();
criteria.put("key_id", userKey.getKeyId());
List<APIKeyWebservice> list = frameWorkMapper.queryListByAPIKeyId(criteria);
session.setAttribute("perm", list);
return "认证成功!";
}
}
return "认证失败!";
} }
<sql id="Example_Where_Clause">
<trim prefix="where" prefixOverrides="and|or">
<if test="condition.keyNameLike != null">
<![CDATA[ and KEY_NAME LIKE '%'||#{condition.keyNameLike}||'%' ]]>
</if>
<if test="condition.keyName != null">
and KEY_NAME = #{condition.keyName}
</if>
<if test="condition.keyDesc != null">
and KEY_DESC = #{condition.keyDesc}
</if>
</trim>
</sql>
<sql id="Base_Column_List">KEY_ID,KEY_NAME,KEY_PASSWORD,KEY_IP,KEY_DESC</sql>
<select id="selectByExample" resultMap="BaseResultMap"
parameterType="Criteria">
<include refid="common.Oracle_Pagination_Head" />
select
<if test="distinct">distinct</if>
<include refid="Base_Column_List" />
from BASE_APIKEYS
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
<if test="orderByClause != null">order by ${orderByClause}</if>
<include refid="common.Oracle_Pagination_Tail" />
</select>

最新文章

  1. Sass学习笔记之入门篇
  2. SPOJ 375 Query on a tree 树链剖分模板
  3. FlexPaper使用小结
  4. Filter过滤器简单应用( 接口访问控制 )
  5. hiho #1143 : 骨牌覆盖问题&#183;一 (运用快速幂矩阵)
  6. [iOS] UIImage和CGImageRef
  7. 插入随机数到MySQL数据库
  8. mysql 性能问题
  9. Team Homework #1 学长“学霸英语学习软件”试用
  10. IOS 特定于设备的开发:监测Retina支持
  11. Alcatraz:插件管理
  12. DOS命令运行java文件,批量引用jar包
  13. 在无人值守程序(服务)中调用Microsoft Graph
  14. Xapian索引-文档检索过程分析
  15. LeetCode算法题-N-ary Tree Preorder Traversal(Java实现)
  16. 第十三节: EF的三种模式(三) 之 来自数据库的CodeFirst模式
  17. 【Ubuntu】安装Java和Eclipse
  18. 使用curator 来管理elasticsearch的index
  19. C#实现http协议支持上传下载文件的GET、POST请求
  20. MFC onchar()

热门文章

  1. SecureRandom产生强随机数简介
  2. MySQL分库备份与分表备份
  3. ckeditor 前段js配置toolbar以及取值(实用)
  4. APNS .p12文件转换为 .pem文件
  5. js知识梳理1:理解对象的属性特性
  6. ffmpeg对rtmp的基本操作[转]
  7. Android动画之旅-Android动画基本介绍
  8. selenium-Getting Started
  9. Android平台上直接物理内存读写漏洞的那些事
  10. 利用Redis撤销JSON Web Token产生的令牌