提交 0c47a106 编写于 作者: C Calvin

琐碎小修改

上级 528b8d06
......@@ -49,19 +49,34 @@ public class AccountServiceTest {
accountService.registerUser(user);
// 验证user的角色,注册日期和加密后的密码都被自动更新了。
assertEquals("user", user.getRoles());
assertEquals(currentTime, user.getRegisterDate());
assertNotNull(user.getPassword());
assertNotNull(user.getSalt());
}
@Test
public void updateUser() {
// 如果明文密码不为空,加密密码会被更新.
User user = UserData.randomNewUser();
accountService.updateUser(user);
assertNotNull(user.getSalt());
// 如果明文密码为空,加密密码无变化。
User user2 = UserData.randomNewUser();
user2.setPlainPassword(null);
accountService.updateUser(user2);
assertNull(user2.getSalt());
}
@Test
public void deleteUser() {
// 正常删除用户.
accountService.deleteUser(2L);
Mockito.verify(mockUserDao).delete(2L);
// 删除超级管理用户抛出异常.
// 删除超级管理用户抛出异常, userDao没有被执行
try {
accountService.deleteUser(1L);
fail("expected ServicExcepton not be thrown");
......
<%@ page language="java" pageEncoding="UTF-8" %>
<%@ taglib prefix="shiro" uri="http://shiro.apache.org/tags" %>
<div id="header" class="row">
<div class="span10"><h1>Showcase示例<small>--开源项目大派对</small></h1></div>
<div class="pull-right span2">
<div><h1>Showcase示例<small>--开源项目大派对</small></h1></div>
<div class="pull-right">
<shiro:guest><a href="${ctx}/login">登录</a></shiro:guest>
<shiro:user>你好, <shiro:principal property="name"/> <a href="${ctx}/logout">退出登录</a></shiro:user>
</div>
......
......@@ -16,8 +16,8 @@
<h2>1. 传统SOAP Web Service演示</h2>
<ul>
<li>服务端是基于CXF的JAX-WS演示, 见CXF自动生成的<a href="${ctx}/cxf/">wsdl文件列表</a>.</li>
<li>客户端见Functional Test用例.</li>
<li>服务端是基于CXF的JAX-WS演示, 见CXF自动生成的<a href="${ctx}/cxf/">wsdl文件列表</a></li>
<li>客户端见Functional Test用例, 或SoapUI工具.</li>
</ul>
<h2>2. 基于JAX-RS实现的Restful演示</h2>
......@@ -36,7 +36,7 @@
客户端:
<ul>
<li>RestTemplate设置HttpHeaders的写法,用原始的exchange()方法及用ClientHttpRequestInterceptor两种方法</li>
<li>RestTemplate底层使用用默认的JDK HttpConnection,Apache HttpClient4</li>
<li>RestTemplate底层使用用默认的JDK HttpConnection,也可设置为Apache HttpClient4</li>
<li>RestTemplate设置超时控制</li>
<li>客户端同样见Functional Test用例UserRestFt.java</li>
</ul>
......
......@@ -163,19 +163,24 @@ public class Servlets {
/**
* 组合Parameters生成Query String的Parameter部分,并在paramter name上加上prefix.
*
* @see #getParametersStartingWith
*/
public static String encodeParameterStringWithPrefix(Map<String, Object> params, String prefix) {
StringBuilder queryStringBuilder = new StringBuilder();
if (params == null || params.size() == 0) {
return "";
}
if (prefix == null) {
prefix = "";
}
StringBuilder queryStringBuilder = new StringBuilder();
Iterator<Entry<String, Object>> it = params.entrySet().iterator();
while (it.hasNext()) {
Entry<String, Object> entry = it.next();
queryStringBuilder.append(prefix).append(entry.getKey()).append("=").append(entry.getValue());
queryStringBuilder.append(prefix).append(entry.getKey()).append('=').append(entry.getValue());
if (it.hasNext()) {
queryStringBuilder.append("&");
queryStringBuilder.append('&');
}
}
return queryStringBuilder.toString();
......
......@@ -79,12 +79,19 @@ public class ServletsTest {
queryString = Servlets.encodeParameterStringWithPrefix(params, "search_");
assertEquals("search_name=foo&search_age=1", queryString);
// prefix is null
// prefix is blank or null
queryString = Servlets.encodeParameterStringWithPrefix(params, null);
assertEquals("name=foo&age=1", queryString);
queryString = Servlets.encodeParameterStringWithPrefix(params, "");
assertEquals("name=foo&age=1", queryString);
// map is empty or null
queryString = Servlets.encodeParameterStringWithPrefix(null, "search_");
assertEquals("", queryString);
params.clear();
queryString = Servlets.encodeParameterStringWithPrefix(params, "search_");
assertEquals("", queryString);
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册