Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit b4a9cb9

Browse files
committed
Merge remote-tracking branch 'origin/master'
2 parents fc9a101 + eccfc3a commit b4a9cb9

File tree

13 files changed

+200
-14
lines changed

13 files changed

+200
-14
lines changed

auto-java-code-upgrade/src/main/java/com/jay/generator/codegen/mybatis3/xmlmapper/MySimpleXMLMapperGenerator.java

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
import org.mybatis.generator.api.dom.xml.XmlElement;
88
import org.mybatis.generator.codegen.mybatis3.xmlmapper.SimpleXMLMapperGenerator;
99
import org.mybatis.generator.codegen.mybatis3.xmlmapper.elements.AbstractXmlElementGenerator;
10+
import org.mybatis.generator.codegen.mybatis3.xmlmapper.elements.BaseColumnListElementGenerator;
11+
import org.mybatis.generator.codegen.mybatis3.xmlmapper.elements.UpdateByPrimaryKeyWithoutBLOBsElementGenerator;
1012
import org.mybatis.generator.internal.util.messages.Messages;
1113

1214
/**
@@ -28,7 +30,7 @@ protected XmlElement getSqlMapElement() {
2830
answer.addAttribute(new Attribute("namespace", namespace));
2931
this.context.getCommentGenerator().addRootComment(answer);
3032
this.addResultMapElement(answer);
31-
this.addDeleteByPrimaryKeyElement(answer);
33+
this.addBaseColumnListElement(answer);
3234
this.addInsertElement(answer);
3335
this.addUpdateByPrimaryKeyElement(answer);
3436
this.addSelectByPrimaryKeyElement(answer);
@@ -49,6 +51,13 @@ protected void addQueryPageListElement(XmlElement parentElement) {
4951
this.initializeAndExecuteGenerator(elementGenerator, parentElement);
5052
}
5153

54+
protected void addBaseColumnListElement(XmlElement parentElement) {
55+
// if (this.introspectedTable.getRules().generateBaseColumnList()) {
56+
AbstractXmlElementGenerator elementGenerator = new BaseColumnListElementGenerator();
57+
this.initializeAndExecuteGenerator(elementGenerator, parentElement);
58+
// }
59+
60+
}
5261
/**
5362
* 统计数量语句
5463
*
@@ -58,4 +67,10 @@ protected void addCountListElement(XmlElement parentElement) {
5867
AbstractXmlElementGenerator elementGenerator = new MySimpleCountListElementGenerator();
5968
this.initializeAndExecuteGenerator(elementGenerator, parentElement);
6069
}
70+
@Override
71+
protected void addUpdateByPrimaryKeyElement(XmlElement parentElement) {
72+
AbstractXmlElementGenerator elementGenerator = new UpdateByPrimaryKeyWithoutBLOBsElementGenerator(true);
73+
this.initializeAndExecuteGenerator(elementGenerator, parentElement);
74+
75+
}
6176
}

auto-java-code-upgrade/src/main/resources/generatorConfig.properties

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55
projectPath=D:/Self_learn/JavaCode
66
#jdbcConnection 连接
77
driverClass=com.mysql.jdbc.Driver
8-
jdbcUrl=jdbc:mysql://localhost:3306/platformkf?useUnicode\=true&characterEncoding\=UTF-8
9-
user=root
10-
password=1234
8+
jdbcUrl=jdbc:mysql://192.168.210.33:3306/platformkf?useUnicode\=true&characterEncoding\=UTF-8
9+
user=dev
10+
password=dev123456
1111

1212
#targetProject是包所在的位置:要写成相对路径
1313
#mac 下
@@ -16,11 +16,11 @@ password=1234
1616
targetProject=auto-java-code-upgrade\\src\\main\\java
1717

1818
#model的目标包名
19-
modelTargetPackage=com.aisino.projects.task.model
19+
modelTargetPackage=com.zjaisino.shop.order.model
2020
#映射文件的目标包名
21-
sqlMapTargetPackage=com.aisino.projects.task.mybatis
21+
sqlMapTargetPackage=com.zjaisino.shop.order.mybatis
2222
#dao的目标包名
23-
daoTargetPackage=com.aisino.projects.task.mapper
23+
daoTargetPackage=com.zjaisino.shop.order.mapper
2424

2525
service,controller的包名位置
26-
serviceName=com.aisino.projects.task.service
26+
serviceName=com.zjaisino.shop.order.service

auto-java-code-upgrade/src/main/resources/generatorConfig.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
<property name="enableSubPackages" value="true"/>
4343
</javaClientGenerator>
4444
<!--生成对应表及类名-->
45-
<table tableName="okwuyou_goods_images" domainObjectName="OkwuyouGoodsImages"
45+
<table tableName="tax_shop_order" domainObjectName="TaxShopOrder"
4646
enableInsert="true" enableDeleteByPrimaryKey="false" enableUpdateByPrimaryKey="true"
4747
enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false"
4848
enableSelectByExample="false" selectByExampleQueryId="false" selectByPrimaryKeyQueryId="false"></table>

design-patterns/pom.xml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,11 @@
1414

1515
</properties>
1616
<dependencies>
17-
17+
<dependency>
18+
<groupId>org.springframework</groupId>
19+
<artifactId>spring-core</artifactId>
20+
<version>4.3.16.RELEASE</version>
21+
</dependency>
1822
</dependencies>
1923
<build>
2024
<plugins>

design-patterns/src/main/java/com/decorate/Client.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ public static void main(String[] args) {
99
Coffee coffee1 = new Americano();
1010
Coffee coffee2 = new Latte();
1111
Flavour flavour = new Sugar(coffee1);
12-
System.out.println(flavour.getCoffeeInfo());
12+
System.out.println(flavour.getCoffeeInfo()+"现在的价格是:"+flavour.cost());
1313
Flavour flavour1 = new Milk(coffee2);
14-
System.out.println(flavour1.getCoffeeInfo());
14+
System.out.println(flavour1.getCoffeeInfo()+"现在的价格是:"+flavour1.cost());
1515

1616
}
1717
}

design-patterns/src/main/java/com/decorate/doc/装饰者模式(以 coffee为例).pos

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package com.proxy.cglib;
2+
3+
/**
4+
* @author xiang.wei
5+
* @create 2018/5/28 15:19
6+
*/
7+
public class Client {
8+
public static void main(String[] args) {
9+
//目标对象
10+
RealSubject realSubject = new RealSubject();
11+
//代理对象
12+
RealSubject proxy = (RealSubject) new ProxyFactory(realSubject).getProxyInstance();
13+
proxy.buyCosmetics();
14+
}
15+
}
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
package com.proxy.cglib;
2+
3+
import org.springframework.cglib.proxy.Enhancer;
4+
import org.springframework.cglib.proxy.MethodInterceptor;
5+
import org.springframework.cglib.proxy.MethodProxy;
6+
7+
import java.lang.reflect.Method;
8+
9+
/**
10+
* @author xiang.wei
11+
* @create 2018/5/28 15:03
12+
*/
13+
public class ProxyFactory implements MethodInterceptor{
14+
//维护目标对象
15+
private Object target;
16+
17+
public ProxyFactory(Object target) {
18+
this.target = target;
19+
}
20+
21+
/**
22+
* 给目标对象创建一个代理对象
23+
* @return
24+
*/
25+
public Object getProxyInstance() {
26+
//1.工具类
27+
Enhancer enhancer = new Enhancer();
28+
//2.设置代理目标
29+
enhancer.setSuperclass(target.getClass());
30+
//3.设置回调函数
31+
enhancer.setCallback(this);
32+
//4.创建子类(代理对象)
33+
return enhancer.create();
34+
}
35+
@Override
36+
public Object intercept(Object o, Method method, Object[] objects, MethodProxy methodProxy) throws Throwable {
37+
System.out.println("前置处理");
38+
Object returnValue = methodProxy.invoke(target, objects);
39+
System.out.println("后置处理");
40+
return returnValue;
41+
}
42+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
package com.proxy.cglib;
2+
3+
/**
4+
* @author xiang.wei
5+
* @create 2018/5/28 15:02
6+
*/
7+
public class RealSubject {
8+
public void buyCosmetics() {
9+
System.out.println("买某种进口化妆品");
10+
}
11+
}
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package com.proxy.dynamic_proxy;
2+
3+
import java.lang.reflect.Proxy;
4+
5+
/**
6+
* @author xiang.wei
7+
* @create 2018/5/28 13:30
8+
*/
9+
public class Client {
10+
public static void main(String[] args) {
11+
ISubject target = new RealSubject();
12+
//生成真实对象的代理
13+
DynamicProxy handler = new DynamicProxy(target);
14+
// 动态生成代理实例(HouseHold代理实例),代理支持的接口由初始化参数(第二个)指定,代理实例处理操作所调用的 handler 由第三个参数指定
15+
ISubject proxy1 = (ISubject) Proxy.newProxyInstance(RealSubject.class.getClassLoader(),RealSubject.class.getInterfaces(),handler);
16+
proxy1.buyCosmetics(); // 执行客户需要进行的行为操作,动态生成的代理实例直接调用指定 handler 的 invoke 方法
17+
18+
ProxyFactory proxyFactory = new ProxyFactory(target);
19+
ISubject proxy = (ISubject) proxyFactory.getProxyInstance();
20+
proxy.buyCosmetics();
21+
}
22+
}

0 commit comments

Comments
 (0)