Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
guns-vip
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
chenjunxiong
guns-vip
Commits
9cb050ab
Commit
9cb050ab
authored
May 20, 2017
by
fsn
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
配置完改造的pom
parent
e3988d55
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
75 additions
and
606 deletions
+75
-606
pom.xml
+61
-144
src/main/java/com/stylefeng/guns/GunsApplication.java
+12
-0
src/main/java/project/config/web/SpringMvcConfig.java
+2
-29
src/main/resources/application.properties
+0
-0
src/test/java/com/stylefeng/guns/DebugTest.java
+0
-33
src/test/java/com/stylefeng/guns/cache/CacheTest.java
+0
-44
src/test/java/com/stylefeng/guns/fastjson/JsonTest.java
+0
-16
src/test/java/com/stylefeng/guns/mockito/SuptVehiTest.java
+0
-55
src/test/java/com/stylefeng/guns/rest/Result.java
+0
-39
src/test/java/com/stylefeng/guns/rest/TestRestTemplate.java
+0
-49
src/test/java/com/stylefeng/guns/rmi/Bussiness.java
+0
-11
src/test/java/com/stylefeng/guns/rmi/BussinessImpl.java
+0
-17
src/test/java/com/stylefeng/guns/rmi/RmiTest.java
+0
-21
src/test/java/com/stylefeng/guns/rmi/Server.java
+0
-26
src/test/java/com/stylefeng/guns/shiro/Base64Test.java
+0
-27
src/test/java/com/stylefeng/guns/shiro/MyRealm1.java
+0
-43
src/test/java/com/stylefeng/guns/shiro/ShiroTest.java
+0
-52
No files found.
pom.xml
View file @
9cb050ab
<?xml version="1.0" encoding="UTF-8"?>
<project
xmlns=
"http://maven.apache.org/POM/4.0.0"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
<project
xmlns=
"http://maven.apache.org/POM/4.0.0"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/
maven-v4_0_
0.xsd"
>
xsi:schemaLocation=
"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/
xsd/maven-4.0.
0.xsd"
>
<modelVersion>
4.0.0
</modelVersion>
<modelVersion>
4.0.0
</modelVersion>
<groupId>
com.stylefeng
</groupId>
<groupId>
com.stylefeng
</groupId>
<artifactId>
guns
</artifactId>
<artifactId>
guns
</artifactId>
<version>
1.0.0-SNAPSHOT
</version>
<version>
1.0.0-SNAPSHOT
</version>
<name>
filco Maven Webapp
</name>
<packaging>
jar
</packaging>
<packaging>
war
</packaging>
<url>
http://maven.apache.org
</url>
<name>
guns
</name>
<description>
guns 的spring boot版本
</description>
<parent>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-parent
</artifactId>
<version>
1.5.3.RELEASE
</version>
<relativePath/>
<!-- lookup parent from repository -->
</parent>
<properties>
<properties>
<project.build.sourceEncoding>
UTF-8
</project.build.sourceEncoding>
<project.build.sourceEncoding>
UTF-8
</project.build.sourceEncoding>
<spring.version>
4.2.6.RELEASE
</spring.version>
<project.reporting.outputEncoding>
UTF-8
</project.reporting.outputEncoding>
<slf4j.version>
1.7.7
</slf4j.version>
<java.version>
1.8
</java.version>
<log4j.version>
1.2.17
</log4j.version>
<shiro.version>
1.4.0
</shiro.version>
<aspectj.version>
1.8.9
</aspectj.version>
<mybatis.plus.version>
2.0.8
</mybatis.plus.version>
<shiro.version>
1.3.2
</shiro.version>
</properties>
</properties>
<dependencies>
<dependencies>
<!--spring boot依赖-->
<!--验证码生成-->
<dependency>
<dependency>
<groupId>
com.google.code
</groupId>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
kaptcha
</artifactId>
<artifactId>
spring-boot-starter-aop
</artifactId>
<version>
2.3.0
</version>
</dependency>
</dependency>
<!--缓存框架-->
<dependency>
<dependency>
<groupId>
org.ehcache
</groupId>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
ehcache
</artifactId>
<artifactId>
spring-boot-starter-log4j2
</artifactId>
<version>
3.3.1
</version>
</dependency>
</dependency>
<!-- mock数据和测试 -->
<dependency>
<dependency>
<groupId>
org.powermock
</groupId>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
powermock-api-mockito
</artifactId>
<artifactId>
spring-boot-starter-web
</artifactId>
<version>
1.6.6
</version>
<scope>
test
</scope>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
org.mockito
</groupId>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
mockito-all
</artifactId>
<artifactId>
spring-boot-starter-cache
</artifactId>
<version>
1.10.19
</version>
<scope>
test
</scope>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
org.powermock
</groupId>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
powermock-module-junit4
</artifactId>
<artifactId>
spring-boot-starter-jdbc
</artifactId>
<version>
1.6.6
</version>
<scope>
test
</scope>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
junit
</groupId>
<groupId>
mysql
</groupId>
<artifactId>
junit
</artifactId>
<artifactId>
mysql-connector-java
</artifactId>
<version>
4.12
</version>
<scope>
runtime
</scope>
<scope>
test
</scope>
</dependency>
</dependency>
<!-- END -->
<!--二维码生成-->
<dependency>
<dependency>
<groupId>
com.google.zxing
</groupId>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
core
</artifactId>
<artifactId>
spring-boot-starter-validation
</artifactId>
<version>
3.2.1
</version>
</dependency>
</dependency>
<!-- END -->
<!-- 生成persistence时用的模板 -->
<dependency>
<dependency>
<groupId>
org.
apache.velocity
</groupId>
<groupId>
org.
springframework.boot
</groupId>
<artifactId>
velocity
</artifactId>
<artifactId>
spring-boot-starter-test
</artifactId>
<
version>
1.7
</version
>
<
scope>
test
</scope
>
</dependency>
</dependency>
<!--END-->
<!--
mybatis-plus
-->
<!--
其他依赖
-->
<dependency>
<dependency>
<groupId>
com.
baomidou
</groupId>
<groupId>
com.
google.code
</groupId>
<artifactId>
mybatis-plus
</artifactId>
<artifactId>
kaptcha
</artifactId>
<version>
2.
0.7
</version>
<version>
2.
3.0
</version>
</dependency>
</dependency>
<!--END-->
<!--验证框架-->
<dependency>
<dependency>
<groupId>
org.
hibernat
e
</groupId>
<groupId>
org.
ehcach
e
</groupId>
<artifactId>
hibernate-validator
</artifactId>
<artifactId>
ehcache
</artifactId>
<version>
5.0.2.Final
</version>
<version>
3.3.1
</version>
</dependency>
</dependency>
<!--END-->
<dependency>
<dependency>
<groupId>
org.aspectj
</groupId>
<groupId>
com.google.zxing
</groupId>
<artifactId>
aspectjrt
</artifactId>
<artifactId>
core
</artifactId>
<version>
${aspectj.version}
</version>
<version>
3.2.1
</version>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
org.aspectj
</groupId>
<groupId>
com.baomidou
</groupId>
<artifactId>
aspectjweaver
</artifactId>
<artifactId>
mybatis-plus
</artifactId>
<version>
${
aspectj
.version}
</version>
<version>
${
mybatis.plus
.version}
</version>
</dependency>
</dependency>
<!--<dependency>-->
<!--<groupId>org.apache.velocity</groupId>-->
<!--<artifactId>velocity</artifactId>-->
<!--<version>1.7</version>-->
<!--</dependency>-->
<dependency>
<dependency>
<groupId>
javax.servlet
</groupId>
<groupId>
javax.servlet
</groupId>
<artifactId>
javax.servlet-api
</artifactId>
<artifactId>
javax.servlet-api
</artifactId>
<version>
3.1.0
</version>
<version>
3.1.0
</version>
<scope>
provided
</scope>
<scope>
provided
</scope>
</dependency>
</dependency>
<!-- spring核心包 -->
<dependency>
<groupId>
org.springframework
</groupId>
<artifactId>
spring-oxm
</artifactId>
<version>
${spring.version}
</version>
</dependency>
<dependency>
<groupId>
org.springframework
</groupId>
<artifactId>
spring-jdbc
</artifactId>
<version>
${spring.version}
</version>
</dependency>
<dependency>
<groupId>
org.springframework
</groupId>
<artifactId>
spring-webmvc
</artifactId>
<version>
${spring.version}
</version>
</dependency>
<dependency>
<groupId>
org.springframework
</groupId>
<artifactId>
spring-context-support
</artifactId>
<version>
${spring.version}
</version>
</dependency>
<dependency>
<groupId>
org.springframework
</groupId>
<artifactId>
spring-test
</artifactId>
<version>
${spring.version}
</version>
</dependency>
<!--END-->
<!-- 数据库和连接池 -->
<dependency>
<groupId>
mysql
</groupId>
<artifactId>
mysql-connector-java
</artifactId>
<version>
5.1.39
</version>
</dependency>
<dependency>
<dependency>
<groupId>
com.alibaba
</groupId>
<groupId>
com.alibaba
</groupId>
<artifactId>
druid
</artifactId>
<artifactId>
druid
</artifactId>
<version>
1.0.21
</version>
<version>
1.0.21
</version>
</dependency>
</dependency>
<!--END-->
<!-- 日志文件管理包 -->
<dependency>
<groupId>
log4j
</groupId>
<artifactId>
log4j
</artifactId>
<version>
${log4j.version}
</version>
</dependency>
<dependency>
<groupId>
org.slf4j
</groupId>
<artifactId>
slf4j-api
</artifactId>
<version>
1.7.21
</version>
</dependency>
<dependency>
<groupId>
org.slf4j
</groupId>
<artifactId>
slf4j-log4j12
</artifactId>
<version>
1.7.23
</version>
<exclusions>
<exclusion>
<artifactId>
slf4j-api
</artifactId>
<groupId>
org.slf4j
</groupId>
</exclusion>
</exclusions>
</dependency>
<!--END-->
<!-- 格式化对象,方便输出日志 -->
<dependency>
<groupId>
com.alibaba
</groupId>
<artifactId>
fastjson
</artifactId>
<version>
1.2.21
</version>
</dependency>
<!--END-->
<!--shiro插件 -->
<dependency>
<dependency>
<groupId>
org.apache.shiro
</groupId>
<groupId>
org.apache.shiro
</groupId>
<artifactId>
shiro-core
</artifactId>
<artifactId>
shiro-core
</artifactId>
...
@@ -211,19 +127,15 @@
...
@@ -211,19 +127,15 @@
</exclusion>
</exclusion>
</exclusions>
</exclusions>
</dependency>
</dependency>
<!--END-->
<!-- 模板引擎 -->
<dependency>
<dependency>
<groupId>
com.ibeetl
</groupId>
<groupId>
com.ibeetl
</groupId>
<artifactId>
beetl
</artifactId>
<artifactId>
beetl
</artifactId>
<version>
2.7.0
</version>
<version>
2.7.0
</version>
</dependency>
</dependency>
<!--END-->
</dependencies>
</dependencies>
<build>
<build>
<finalName>
guns
</finalName>
<plugins>
<plugins>
<plugin>
<plugin>
<groupId>
org.apache.maven.plugins
</groupId>
<groupId>
org.apache.maven.plugins
</groupId>
...
@@ -234,6 +146,10 @@
...
@@ -234,6 +146,10 @@
<target>
1.8
</target>
<target>
1.8
</target>
</configuration>
</configuration>
</plugin>
</plugin>
<plugin>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-maven-plugin
</artifactId>
</plugin>
</plugins>
</plugins>
<resources>
<resources>
<resource>
<resource>
...
@@ -248,4 +164,5 @@
...
@@ -248,4 +164,5 @@
</resources>
</resources>
</build>
</build>
</project>
</project>
src/main/java/com/stylefeng/guns/GunsApplication.java
0 → 100644
View file @
9cb050ab
package
com
.
stylefeng
.
guns
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
@SpringBootApplication
public
class
GunsApplication
{
public
static
void
main
(
String
[]
args
)
{
SpringApplication
.
run
(
GunsApplication
.
class
,
args
);
}
}
src/main/java/project/config/web/SpringMvcConfig.java
View file @
9cb050ab
package
project
.
config
.
web
;
package
project
.
config
.
web
;
import
com.alibaba.fastjson.parser.Feature
;
import
com.alibaba.fastjson.serializer.SerializerFeature
;
import
com.alibaba.fastjson.support.config.FastJsonConfig
;
import
com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter4
;
import
org.beetl.ext.spring.BeetlSpringViewResolver
;
import
org.beetl.ext.spring.BeetlSpringViewResolver
;
import
org.hibernate.validator.HibernateValidator
;
import
org.hibernate.validator.HibernateValidator
;
import
org.springframework.context.annotation.*
;
import
org.springframework.context.annotation.*
;
...
@@ -11,7 +7,6 @@ import org.springframework.context.support.ReloadableResourceBundleMessageSource
...
@@ -11,7 +7,6 @@ import org.springframework.context.support.ReloadableResourceBundleMessageSource
import
org.springframework.core.io.ClassPathResource
;
import
org.springframework.core.io.ClassPathResource
;
import
org.springframework.http.MediaType
;
import
org.springframework.http.MediaType
;
import
org.springframework.http.converter.ByteArrayHttpMessageConverter
;
import
org.springframework.http.converter.ByteArrayHttpMessageConverter
;
import
org.springframework.http.converter.HttpMessageConverter
;
import
org.springframework.http.converter.StringHttpMessageConverter
;
import
org.springframework.http.converter.StringHttpMessageConverter
;
import
org.springframework.validation.Validator
;
import
org.springframework.validation.Validator
;
import
org.springframework.validation.beanvalidation.LocalValidatorFactoryBean
;
import
org.springframework.validation.beanvalidation.LocalValidatorFactoryBean
;
...
@@ -102,14 +97,7 @@ public class SpringMvcConfig extends WebMvcConfigurerAdapter {
...
@@ -102,14 +97,7 @@ public class SpringMvcConfig extends WebMvcConfigurerAdapter {
}
}
// messageConverter
@Override
public
void
configureMessageConverters
(
List
<
HttpMessageConverter
<?>>
converters
)
{
converters
.
add
(
byteMsgConverter
());
converters
.
add
(
stringHttpMessageConverter
());
converters
.
add
(
fastJsonHttpMessageConverter
());
super
.
configureMessageConverters
(
converters
);
}
@Bean
@Bean
public
ByteArrayHttpMessageConverter
byteMsgConverter
()
{
public
ByteArrayHttpMessageConverter
byteMsgConverter
()
{
...
@@ -126,21 +114,6 @@ public class SpringMvcConfig extends WebMvcConfigurerAdapter {
...
@@ -126,21 +114,6 @@ public class SpringMvcConfig extends WebMvcConfigurerAdapter {
return
stringHttpMessageConverter
;
return
stringHttpMessageConverter
;
}
}
@Bean
public
FastJsonHttpMessageConverter4
fastJsonHttpMessageConverter
()
{
FastJsonHttpMessageConverter4
convert
=
new
FastJsonHttpMessageConverter4
();
List
<
MediaType
>
list
=
new
ArrayList
<
MediaType
>();
list
.
add
(
MediaType
.
TEXT_HTML
);
list
.
add
(
MediaType
.
APPLICATION_JSON_UTF8
);
convert
.
setSupportedMediaTypes
(
list
);
FastJsonConfig
fastJsonConfig
=
new
FastJsonConfig
();
fastJsonConfig
.
setFeatures
(
Feature
.
AllowArbitraryCommas
,
Feature
.
AllowUnQuotedFieldNames
,
Feature
.
DisableCircularReferenceDetect
);
fastJsonConfig
.
setSerializerFeatures
(
SerializerFeature
.
WriteMapNullValue
,
SerializerFeature
.
WriteNullStringAsEmpty
);
fastJsonConfig
.
setDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
convert
.
setFastJsonConfig
(
fastJsonConfig
);
return
convert
;
}
}
}
src/main/resources/application.properties
0 → 100644
View file @
9cb050ab
src/test/java/com/stylefeng/guns/DebugTest.java
deleted
100644 → 0
View file @
e3988d55
package
com
.
stylefeng
.
guns
;
import
java.util.Random
;
/**
* idea的测试
*
* @author fstyle
* @date 2017-03-12 21:28
*/
public
class
DebugTest
{
public
static
void
main
(
String
[]
args
)
{
int
temp1
=
100
;
int
temp2
=
200
;
int
temp3
=
add
(
temp1
,
temp2
);
System
.
out
.
println
(
temp1
);
System
.
out
.
println
(
temp2
);
System
.
out
.
println
(
temp3
);
Random
random
=
new
Random
();
random
.
doubles
();
}
public
static
int
add
(
int
i
,
int
j
){
int
temp3
=
i
+
j
;
return
temp3
;
}
}
src/test/java/com/stylefeng/guns/cache/CacheTest.java
deleted
100644 → 0
View file @
e3988d55
package
com
.
stylefeng
.
guns
.
cache
;
import
com.alibaba.fastjson.JSON
;
import
com.stylefeng.guns.base.BaseTest
;
import
com.stylefeng.guns.common.constant.cache.Cache
;
import
com.stylefeng.guns.common.constant.factory.ConstantFactory
;
import
com.stylefeng.guns.core.cache.CacheKit
;
import
org.junit.Test
;
import
java.util.List
;
/**
* 缓存测试
*
* @author fengshuonan
* @date 2017-04-24 21:00
*/
public
class
CacheTest
extends
BaseTest
{
/**
* 测试没有缓存的情况
*
* @author fengshuonan
* @Date 2017/4/24 21:00
*/
@Test
public
void
testNoCache
()
{
long
beginTIme
=
System
.
currentTimeMillis
();
//用缓存200万次查询,速度6秒
for
(
int
i
=
1
;
i
<
2000000
;
i
++)
{
ConstantFactory
.
me
().
getSingleRoleName
(
1
);
}
System
.
out
.
println
(
System
.
currentTimeMillis
()
-
beginTIme
);
System
.
out
.
println
();
CacheKit
.
removeAll
(
Cache
.
CONSTANT
);
List
constant1
=
CacheKit
.
getKeys
(
Cache
.
CONSTANT
);
System
.
out
.
println
(
JSON
.
toJSONString
(
constant1
));
}
}
src/test/java/com/stylefeng/guns/fastjson/JsonTest.java
deleted
100644 → 0
View file @
e3988d55
package
com
.
stylefeng
.
guns
.
fastjson
;
import
org.junit.Test
;
import
com.alibaba.fastjson.JSON
;
import
com.stylefeng.guns.common.constant.tips.Tip
;
import
com.stylefeng.guns.common.constant.tips.SuccessTip
;
public
class
JsonTest
{
@Test
public
void
test
(){
Tip
tip
=
new
SuccessTip
();
System
.
out
.
println
(
JSON
.
toJSONString
(
tip
));
}
}
src/test/java/com/stylefeng/guns/mockito/SuptVehiTest.java
deleted
100644 → 0
View file @
e3988d55
package
com
.
stylefeng
.
guns
.
mockito
;
import
com.stylefeng.guns.persistence.dao.UserMapper
;
import
com.stylefeng.guns.persistence.model.User
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
import
org.powermock.core.classloader.annotations.PowerMockIgnore
;
import
org.powermock.core.classloader.annotations.PrepareForTest
;
import
org.powermock.modules.junit4.PowerMockRunner
;
import
org.powermock.modules.junit4.PowerMockRunnerDelegate
;
import
org.springframework.test.context.ContextConfiguration
;
import
org.springframework.test.context.junit4.SpringJUnit4ClassRunner
;
import
project.config.root.RootSpringConfig
;
import
javax.annotation.Resource
;
import
static
org
.
powermock
.
api
.
mockito
.
PowerMockito
.
mockStatic
;
import
static
org
.
powermock
.
api
.
mockito
.
PowerMockito
.
when
;
/**
* 自营车辆测试
*
* @author fengshuonan
* @date 2017-03-23 16:38
*/
@RunWith
(
PowerMockRunner
.
class
)
//使用PowerMockRunner运行时
@PowerMockRunnerDelegate
(
SpringJUnit4ClassRunner
.
class
)
//委派给SpringJUnit4ClassRunner
@ContextConfiguration
(
classes
=
RootSpringConfig
.
class
)
@PowerMockIgnore
(
{
"javax.management.*"
,
"org.apache.shiro.*"
})
@PrepareForTest
(
TestMockito
.
class
)
public
class
SuptVehiTest
{
@Resource
UserMapper
userMapper
;
@Test
public
void
test
(){
mockStatic
(
TestMockito
.
class
);
when
(
TestMockito
.
get
()).
thenReturn
(
"bbb"
);
System
.
out
.
println
(
TestMockito
.
get
());
User
user
=
userMapper
.
selectById
(
1
);
System
.
out
.
println
(
user
.
getAccount
());
}
}
class
TestMockito
{
public
static
String
get
(){
return
"aaa"
;
}
}
\ No newline at end of file
src/test/java/com/stylefeng/guns/rest/Result.java
deleted
100644 → 0
View file @
e3988d55
package
com
.
stylefeng
.
guns
.
rest
;
public
class
Result
{
private
String
status
;
private
String
count
;
private
String
info
;
private
String
infocode
;
public
String
getStatus
()
{
return
status
;
}
public
void
setStatus
(
String
status
)
{
this
.
status
=
status
;
}
public
String
getCount
()
{
return
count
;
}
public
void
setCount
(
String
count
)
{
this
.
count
=
count
;
}
public
String
getInfo
()
{
return
info
;
}
public
void
setInfo
(
String
info
)
{
this
.
info
=
info
;
}
public
String
getInfocode
()
{
return
infocode
;
}
public
void
setInfocode
(
String
infocode
)
{
this
.
infocode
=
infocode
;
}
@Override
public
String
toString
()
{
return
"Result [status="
+
status
+
", count="
+
count
+
", info="
+
info
+
", infocode="
+
infocode
+
"]"
;
}
}
src/test/java/com/stylefeng/guns/rest/TestRestTemplate.java
deleted
100644 → 0
View file @
e3988d55
package
com
.
stylefeng
.
guns
.
rest
;
import
java.nio.charset.Charset
;
import
java.util.ArrayList
;
import
java.util.List
;
import
org.springframework.http.MediaType
;
import
org.springframework.http.converter.HttpMessageConverter
;
import
org.springframework.http.converter.StringHttpMessageConverter
;
import
org.springframework.web.client.RestTemplate
;
import
com.alibaba.fastjson.parser.Feature
;
import
com.alibaba.fastjson.serializer.SerializerFeature
;
import
com.alibaba.fastjson.support.config.FastJsonConfig
;
import
com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter4
;
public
class
TestRestTemplate
{
public
static
void
main
(
String
[]
args
)
{
FastJsonHttpMessageConverter4
convert
=
new
FastJsonHttpMessageConverter4
();
List
<
MediaType
>
list
=
new
ArrayList
<
MediaType
>();
list
.
add
(
MediaType
.
TEXT_HTML
);
list
.
add
(
MediaType
.
APPLICATION_JSON_UTF8
);
convert
.
setSupportedMediaTypes
(
list
);
FastJsonConfig
fastJsonConfig
=
new
FastJsonConfig
();
fastJsonConfig
.
setFeatures
(
Feature
.
AllowArbitraryCommas
,
Feature
.
AllowUnQuotedFieldNames
,
Feature
.
DisableCircularReferenceDetect
);
fastJsonConfig
.
setSerializerFeatures
(
SerializerFeature
.
WriteMapNullValue
,
SerializerFeature
.
WriteNullStringAsEmpty
);
fastJsonConfig
.
setDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
convert
.
setFastJsonConfig
(
fastJsonConfig
);
StringHttpMessageConverter
stringHttpMessageConverter
=
new
StringHttpMessageConverter
(
Charset
.
forName
(
"UTF-8"
));
List
<
MediaType
>
list2
=
new
ArrayList
<
MediaType
>();
list2
.
add
(
MediaType
.
TEXT_PLAIN
);
stringHttpMessageConverter
.
setSupportedMediaTypes
(
list2
);
List
<
HttpMessageConverter
<?>>
arrayList
=
new
ArrayList
<
HttpMessageConverter
<?>>();
arrayList
.
add
(
stringHttpMessageConverter
);
arrayList
.
add
(
convert
);
RestTemplate
restTemplate
=
new
RestTemplate
();
restTemplate
.
setMessageConverters
(
arrayList
);
Result
forObject
=
restTemplate
.
getForObject
(
"http://restapi.amap.com/v3/assistant/inputtips?output=json&city=010&keywords=招商银行&key=f869cc21fa141530c476d41ede7649ec"
,
Result
.
class
);
System
.
out
.
println
(
forObject
);
}
}
src/test/java/com/stylefeng/guns/rmi/Bussiness.java
deleted
100644 → 0
View file @
e3988d55
package
com
.
stylefeng
.
guns
.
rmi
;
import
java.rmi.RemoteException
;
/**
* @author fengshuonan
* @date 2017-03-19 20:16
*/
public
interface
Bussiness
{
String
echo
(
String
message
)
throws
RemoteException
;
}
src/test/java/com/stylefeng/guns/rmi/BussinessImpl.java
deleted
100644 → 0
View file @
e3988d55
package
com
.
stylefeng
.
guns
.
rmi
;
import
java.io.Serializable
;
import
java.rmi.Remote
;
import
java.rmi.RemoteException
;
/**
* @author fengshuonan
* @date 2017-03-19 20:17
*/
public
class
BussinessImpl
implements
Bussiness
,
Remote
,
Serializable
{
@Override
public
String
echo
(
String
message
)
throws
RemoteException
{
return
"123123123"
;
}
}
src/test/java/com/stylefeng/guns/rmi/RmiTest.java
deleted
100644 → 0
View file @
e3988d55
package
com
.
stylefeng
.
guns
.
rmi
;
import
java.rmi.NotBoundException
;
import
java.rmi.RemoteException
;
import
java.rmi.registry.LocateRegistry
;
import
java.rmi.registry.Registry
;
/**
* 远程调用测试
*
* @author fengshuonan
* @date 2017-03-19 20:14
*/
public
class
RmiTest
{
public
static
void
main
(
String
[]
args
)
throws
RemoteException
,
NotBoundException
{
Registry
registry
=
LocateRegistry
.
getRegistry
(
"localhost"
);
Bussiness
bussiness
=
(
Bussiness
)
registry
.
lookup
(
"BussinessDemo"
);
System
.
out
.
println
(
bussiness
.
echo
(
""
));
}
}
src/test/java/com/stylefeng/guns/rmi/Server.java
deleted
100644 → 0
View file @
e3988d55
package
com
.
stylefeng
.
guns
.
rmi
;
import
java.rmi.AlreadyBoundException
;
import
java.rmi.RemoteException
;
import
java.rmi.registry.LocateRegistry
;
import
java.rmi.registry.Registry
;
import
java.rmi.server.UnicastRemoteObject
;
/**
* 远程调用测试
*
* @author fengshuonan
* @date 2017-03-19 20:14
*/
public
class
Server
{
public
static
void
main
(
String
[]
args
)
throws
RemoteException
,
AlreadyBoundException
{
while
(
true
){
BussinessImpl
bussiness
=
new
BussinessImpl
();
UnicastRemoteObject
.
exportObject
(
new
BussinessImpl
(),
9999
);
Registry
registry
=
LocateRegistry
.
createRegistry
(
1099
);
registry
.
rebind
(
"BussinessDemo"
,
bussiness
);
}
}
}
src/test/java/com/stylefeng/guns/shiro/Base64Test.java
deleted
100644 → 0
View file @
e3988d55
package
com
.
stylefeng
.
guns
.
shiro
;
import
org.springframework.util.Base64Utils
;
import
java.io.UnsupportedEncodingException
;
import
java.util.Arrays
;
public
class
Base64Test
{
/**
* Shiro 记住密码采用的是AES加密,AES key length 需要是16位,该方法生成16位的key
*/
public
static
void
main
(
String
[]
args
)
{
String
keyStr
=
"guns"
;
byte
[]
keys
;
try
{
keys
=
keyStr
.
getBytes
(
"UTF-8"
);
System
.
out
.
println
(
Base64Utils
.
encodeToString
(
Arrays
.
copyOf
(
keys
,
16
)));
}
catch
(
UnsupportedEncodingException
e
)
{
e
.
printStackTrace
();
}
}
}
src/test/java/com/stylefeng/guns/shiro/MyRealm1.java
deleted
100644 → 0
View file @
e3988d55
package
com
.
stylefeng
.
guns
.
shiro
;
import
org.apache.shiro.authc.AuthenticationException
;
import
org.apache.shiro.authc.AuthenticationInfo
;
import
org.apache.shiro.authc.AuthenticationToken
;
import
org.apache.shiro.authc.IncorrectCredentialsException
;
import
org.apache.shiro.authc.SimpleAuthenticationInfo
;
import
org.apache.shiro.authc.UnknownAccountException
;
import
org.apache.shiro.authc.UsernamePasswordToken
;
import
org.apache.shiro.realm.Realm
;
/**
* @Description 自定义shiro认证域
* @author fengshuonan
* @date 2016年11月14日 下午1:32:11
*/
public
class
MyRealm1
implements
Realm
{
@Override
public
String
getName
()
{
return
"myrealm1"
;
}
@Override
public
boolean
supports
(
AuthenticationToken
token
)
{
// 仅支持 UsernamePasswordToken 类型的 Token
return
token
instanceof
UsernamePasswordToken
;
}
@Override
public
AuthenticationInfo
getAuthenticationInfo
(
AuthenticationToken
token
)
throws
AuthenticationException
{
String
username
=
(
String
)
token
.
getPrincipal
();
// 得到用户名
String
password
=
new
String
((
char
[])
token
.
getCredentials
());
// 得到密码
if
(!
"zhang"
.
equals
(
username
))
{
throw
new
UnknownAccountException
();
// 如果用户名错误
}
if
(!
"1234"
.
equals
(
password
))
{
throw
new
IncorrectCredentialsException
();
// 如果密码错误
}
// 如果身份认证验证成功,返回一个 AuthenticationInfo 实现;
return
new
SimpleAuthenticationInfo
(
username
,
password
,
getName
());
}
}
\ No newline at end of file
src/test/java/com/stylefeng/guns/shiro/ShiroTest.java
deleted
100644 → 0
View file @
e3988d55
package
com
.
stylefeng
.
guns
.
shiro
;
import
org.apache.shiro.SecurityUtils
;
import
org.apache.shiro.authc.AuthenticationException
;
import
org.apache.shiro.authc.UsernamePasswordToken
;
import
org.apache.shiro.config.IniSecurityManagerFactory
;
import
org.apache.shiro.subject.Subject
;
import
org.apache.shiro.util.Factory
;
import
org.junit.Assert
;
import
org.junit.Test
;
import
com.stylefeng.guns.core.shiro.ShiroKit
;
/**
* @Description shiro权限管理框架测试
* @author fengshuonan
* @date 2016年11月14日 下午1:21:58
*/
public
class
ShiroTest
{
@Test
public
void
testHelloworld
()
{
// 1、获取 SecurityManager 工厂,此处使用 Ini 配置文件初始化 SecurityManager
Factory
<
org
.
apache
.
shiro
.
mgt
.
SecurityManager
>
factory
=
new
IniSecurityManagerFactory
(
"classpath:shiro/shiro.ini"
);
// 2、得到 SecurityManager 实例 并绑定给 SecurityUtils
org
.
apache
.
shiro
.
mgt
.
SecurityManager
securityManager
=
factory
.
getInstance
();
SecurityUtils
.
setSecurityManager
(
securityManager
);
// 3、得到 Subject 及创建用户名/密码身份验证 Token(即用户身份/凭证)
Subject
subject
=
SecurityUtils
.
getSubject
();
UsernamePasswordToken
token
=
new
UsernamePasswordToken
(
"zhang"
,
"123"
);
try
{
// 4、登录,即身份验证
subject
.
login
(
token
);
}
catch
(
AuthenticationException
e
)
{
// 5、身份验证失败
}
Assert
.
assertEquals
(
true
,
subject
.
isAuthenticated
());
// 断言用户已经登录
// 6、退出
subject
.
logout
();
}
@Test
public
void
randomSaltTest
(){
for
(
int
i
=
0
;
i
<
20
;
i
++){
System
.
out
.
println
(
ShiroKit
.
getRandomSalt
(
6
));
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment