Bläddra i källkod

client配置修改,mybatis-generator使用

haha600 5 år sedan
förälder
incheckning
cf74b9aba2

BIN
1.dmp


+ 1 - 0
facade/src/app/core/startup/startup.service.ts

@@ -101,6 +101,7 @@ export class StartupService {
101 101
       let menus = res.menu || [];
102 102
       user['token'] = token || '';
103 103
 
104
+      res.app.description = res.app.note;
104 105
       // 应用信息:包括站点名、描述、年份
105 106
       this.settingService.setApp(res.app);
106 107
       // 用户信息:包括姓名、头像、邮箱地址

+ 5 - 3
facade/src/app/routes/passport/login/login.component.ts

@@ -114,20 +114,22 @@ export class UserLoginComponent implements OnDestroy {
114 114
 
115 115
     const data = {
116 116
         grant_type: 'password',
117
-        client_id: environment.client_id,
118
-        client_secret: environment.client_secret,
117
+        client_id: this.settingsService.app.clientId || environment.client_id,
118
+        client_secret: this.settingsService.app.clientSecret || environment.client_secret,
119 119
         scope: '*',
120 120
         username: this.userName.value,
121 121
         password: this.password.value,
122 122
         provider: environment.provider,
123 123
       };
124 124
 
125
+      console.log(this.settingsService.app);
126
+
125 127
     const url = environment.BASE_URL + 'oauth/token?_allow_anonymous=true';
126 128
     let options = null;
127 129
     let params: any = null;
128 130
     let body = null;
129 131
     if ( environment.auth_set_header ) {
130
-       options = {headers:   {Authorization: 'Basic ' + btoa ( environment.client_id + ':' + environment.client_secret ),
132
+       options = {headers:   {Authorization: 'Basic ' + btoa ( data.client_id + ':' + data.client_secret ),
131 133
          'Content-type': 'application/x-www-form-urlencoded'}};
132 134
       params = data;
133 135
     } else {

+ 21 - 0
pom.xml

@@ -123,6 +123,27 @@
123 123
 
124 124
 	<build>
125 125
 		<plugins>
126
+			<plugin>
127
+				<groupId>org.mybatis.generator</groupId>
128
+				<artifactId>mybatis-generator-maven-plugin</artifactId>
129
+				<version>1.3.7</version>
130
+				<configuration>
131
+					<verbose>true</verbose>
132
+					<overwrite>true</overwrite>
133
+				</configuration>
134
+				<dependencies>
135
+					<dependency>
136
+						<groupId>com.oracle</groupId>
137
+						<artifactId>ojdbc6</artifactId>
138
+						<version>11.2.0</version>
139
+					</dependency>
140
+					<dependency>
141
+						<groupId>org.mybatis.generator</groupId>
142
+						<artifactId>mybatis-generator-core</artifactId>
143
+						<version>1.3.7</version>
144
+					</dependency>
145
+				</dependencies>
146
+			</plugin>
126 147
 			<plugin>
127 148
 				<groupId>org.springframework.boot</groupId>
128 149
 				<artifactId>spring-boot-maven-plugin</artifactId>

+ 10 - 17
src/main/java/com/kingkong/bljs/api/IndexController.java

@@ -2,24 +2,20 @@ package com.kingkong.bljs.api;
2 2
 
3 3
 import com.alibaba.fastjson.JSONArray;
4 4
 import com.alibaba.fastjson.JSONObject;
5
-import com.kingkong.bljs.accesstor.Accesstor;
5
+import com.kingkong.bljs.dao.AppMapper;
6
+import com.kingkong.bljs.entity.App;
6 7
 import com.kingkong.bljs.security.CustomUser;
7 8
 import com.kingkong.bljs.service.*;
8 9
 import com.kingkong.bljs.util.FileUtil;
9
-import org.apache.ibatis.javassist.scopedpool.SoftValueHashMap;
10 10
 import org.springframework.beans.factory.annotation.Autowired;
11 11
 import org.springframework.beans.factory.annotation.Value;
12 12
 import org.springframework.http.HttpHeaders;
13 13
 import org.springframework.http.HttpStatus;
14 14
 import org.springframework.http.MediaType;
15 15
 import org.springframework.http.ResponseEntity;
16
-import org.springframework.jdbc.core.JdbcTemplate;
17 16
 import org.springframework.stereotype.Controller;
18 17
 import org.springframework.web.bind.annotation.*;
19 18
 
20
-import java.nio.file.Files;
21
-import java.nio.file.Path;
22
-import java.nio.file.Paths;
23 19
 import java.util.ArrayList;
24 20
 import java.util.HashMap;
25 21
 import java.util.List;
@@ -58,6 +54,9 @@ public class IndexController extends ApiController {
58 54
     @Autowired
59 55
     private CommonService commonService;
60 56
 
57
+    @Autowired
58
+    private AppMapper appMapper;
59
+
61 60
 
62 61
     @GetMapping("app")
63 62
     public Map app(@RequestParam("app_id") String app_id) throws Exception{
@@ -80,6 +79,7 @@ public class IndexController extends ApiController {
80 79
         userService.clearUser(customUser.getUsername(),customUser.getAppid());
81 80
         Map user = userService.getCurrentUser();
82 81
 
82
+
83 83
         result.put("app",appInfo(app_id));
84 84
         if(null == user){
85 85
             result.put("user",new HashMap<>());
@@ -91,21 +91,14 @@ public class IndexController extends ApiController {
91 91
         return result;
92 92
     }
93 93
 
94
-    private Map appInfo(String appid) throws Exception{
95
-        //Map app = new HashMap();
96
-        //app.put("name",this.appName);
97
-        //app.put("description",this.appDesc);
98
-
99
-        //Map env  = moduleService.getEnvVariable();
100
-        //String appid = env.get("app_id").toString();
101
-        Map app = this.queryService.first("k_app","id=" + appid);
94
+    private App appInfo(String appid) throws Exception{
95
+        App app = appMapper.get(appid);
102 96
         if(null == app)
103 97
             throw new Exception("系统不存在!");
104
-        if(!app.get("status").toString().equals("1"))
98
+        if(app.getStatus() != 1)
105 99
             throw new Exception("应用正在调整。。。");
106 100
 
107
-        app.put("description",app.get("note"));
108
-
101
+        // app.put("description",app.get("note"));
109 102
         return app;
110 103
     }
111 104
 

+ 2 - 2
src/main/java/com/kingkong/bljs/config/ResourceServerConfig.java

@@ -22,8 +22,8 @@ public class ResourceServerConfig extends ResourceServerConfigurerAdapter {
22 22
 //                .and().cors().and().csrf().disable();
23 23
         http
24 24
                 .authorizeRequests()
25
-                .antMatchers("/oauth/*","/api/app","/api/i18n","/test","/api/report").permitAll()
26
-                .antMatchers("/**").authenticated()
25
+                .antMatchers("/oauth/authorize","/oauth/token","/api/app","/api/i18n","/test","/api/report","/api/lang").permitAll()
26
+                .antMatchers("/api/**").authenticated()
27 27
                 .and().formLogin()
28 28
                 //.authenticationDetailsSource(authenticationDetailsSource)
29 29
                 .and().logout().permitAll().and().cors().and().csrf().disable();

+ 7 - 7
src/main/java/com/kingkong/bljs/config/WebSecurityConfig.java

@@ -43,13 +43,13 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
43 43
     @Override
44 44
     protected void configure(HttpSecurity http) throws Exception {
45 45
         //设置规则
46
-//        http
47
-//                .authorizeRequests()
48
-//                .antMatchers("/oauth/*","/api/app","/api/i18n","/test","/api/report").permitAll()
49
-//                .antMatchers("/**").authenticated()
50
-//                .and().formLogin()
51
-//                //.authenticationDetailsSource(authenticationDetailsSource)
52
-//                .and().logout().permitAll().and().cors().and().csrf().disable();
46
+        http
47
+                .authorizeRequests()
48
+                .antMatchers("/oauth/*","/api/app","/api/i18n","/test","/api/report").permitAll()
49
+                .antMatchers("/**").authenticated()
50
+                .and().formLogin()
51
+                //.authenticationDetailsSource(authenticationDetailsSource)
52
+                .and().logout().permitAll().and().cors().and().csrf().disable();
53 53
 
54 54
     }
55 55
 

+ 15 - 0
src/main/java/com/kingkong/bljs/dao/AppMapper.java

@@ -0,0 +1,15 @@
1
+package com.kingkong.bljs.dao;
2
+
3
+import com.kingkong.bljs.entity.App;
4
+import com.kingkong.bljs.entity.UserApi;
5
+import org.apache.ibatis.annotations.Param;
6
+import org.apache.ibatis.annotations.Select;
7
+
8
+public interface AppMapper {
9
+
10
+    @Select("select * from k_app where client_id=#{client_id}")
11
+    App getByClientId(String client_id);
12
+
13
+    @Select("select * from   where id=#{id}")
14
+    App get(String id);
15
+}

+ 0 - 11
src/main/java/com/kingkong/bljs/dao/AuthClientMapper.java

@@ -1,11 +0,0 @@
1
-package com.kingkong.bljs.dao;
2
-
3
-import com.kingkong.bljs.entity.AuthClient;
4
-import org.apache.ibatis.annotations.Param;
5
-import org.apache.ibatis.annotations.Select;
6
-
7
-public interface AuthClientMapper {
8
-
9
-    @Select("select * from k_client where client_id=#{code}")
10
-    AuthClient get(String code);
11
-}

+ 88 - 0
src/main/java/com/kingkong/bljs/entity/App.java

@@ -0,0 +1,88 @@
1
+package com.kingkong.bljs.entity;
2
+
3
+public class App {
4
+    private int id;
5
+    private String name;
6
+    private String note;
7
+    private int status;
8
+    private String icon;
9
+    private String client_id;
10
+    private String client_secret;
11
+    private String redirect_uri;
12
+
13
+
14
+    public int getId() {
15
+        return id;
16
+    }
17
+
18
+    public void setId(int id) {
19
+        this.id = id;
20
+    }
21
+
22
+    public String getName() {
23
+        return name;
24
+    }
25
+
26
+    public void setName(String name) {
27
+        this.name = name;
28
+    }
29
+
30
+    public String getNote() {
31
+        return note;
32
+    }
33
+
34
+    public void setNote(String note) {
35
+        this.note = note;
36
+    }
37
+
38
+    public int getStatus() {
39
+        return status;
40
+    }
41
+
42
+    public void setStatus(int status) {
43
+        this.status = status;
44
+    }
45
+
46
+    public String getIcon() {
47
+        return icon;
48
+    }
49
+
50
+    public void setIcon(String icon) {
51
+        this.icon = icon;
52
+    }
53
+
54
+    public String getClient_id() {
55
+        return client_id;
56
+    }
57
+
58
+    public void setClient_id(String client_id) {
59
+        this.client_id = client_id;
60
+    }
61
+
62
+    public String getClient_secret() {
63
+        return client_secret;
64
+    }
65
+
66
+    public void setClient_secret(String client_secret) {
67
+        this.client_secret = client_secret;
68
+    }
69
+
70
+    public String getRedirect_uri() {
71
+        return redirect_uri;
72
+    }
73
+
74
+    public void setRedirect_uri(String redirect_uri) {
75
+        this.redirect_uri = redirect_uri;
76
+    }
77
+
78
+    public App(int id, String name, String note, int status, String icon, String client_id, String client_secret, String redirect_uri) {
79
+        this.id = id;
80
+        this.name = name;
81
+        this.note = note;
82
+        this.status = status;
83
+        this.icon = icon;
84
+        this.client_id = client_id;
85
+        this.client_secret = client_secret;
86
+        this.redirect_uri = redirect_uri;
87
+    }
88
+}

+ 0 - 38
src/main/java/com/kingkong/bljs/entity/AuthClient.java

@@ -1,38 +0,0 @@
1
-package com.kingkong.bljs.entity;
2
-
3
-public class AuthClient {
4
-
5
-    private String clientId;
6
-    private String clientSecret;
7
-    private String redirectUri;
8
-
9
-    public String getClientId() {
10
-        return clientId;
11
-    }
12
-
13
-    public String getClientSecret() {
14
-        return clientSecret;
15
-    }
16
-
17
-    public String getRedirectUri() {
18
-        return redirectUri;
19
-    }
20
-
21
-    public AuthClient(String clientId, String clientSecret, String redirectUri) {
22
-        this.clientId = clientId;
23
-        this.clientSecret = clientSecret;
24
-        this.redirectUri = redirectUri;
25
-    }
26
-
27
-    public void setClientId(String clientId) {
28
-        this.clientId = clientId;
29
-    }
30
-
31
-    public void setClientSecret(String clientSecret) {
32
-        this.clientSecret = clientSecret;
33
-    }
34
-
35
-    public void setRedirectUri(String redirectUri) {
36
-        this.redirectUri = redirectUri;
37
-    }
38
-}

+ 7 - 8
src/main/java/com/kingkong/bljs/security/CustomClientDetailService.java

@@ -1,9 +1,8 @@
1 1
 package com.kingkong.bljs.security;
2 2
 
3
-import com.kingkong.bljs.dao.AuthClientMapper;
4
-import com.kingkong.bljs.entity.AuthClient;
3
+import com.kingkong.bljs.dao.AppMapper;
4
+import com.kingkong.bljs.entity.App;
5 5
 import org.springframework.beans.factory.annotation.Autowired;
6
-import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
7 6
 import org.springframework.security.oauth2.provider.ClientDetails;
8 7
 import org.springframework.security.oauth2.provider.ClientDetailsService;
9 8
 import org.springframework.security.oauth2.provider.ClientRegistrationException;
@@ -16,23 +15,23 @@ import java.util.Set;
16 15
 public class CustomClientDetailService implements ClientDetailsService {
17 16
 
18 17
     @Autowired
19
-    private AuthClientMapper authClientMapper;
18
+    private AppMapper appMapper;
20 19
 
21 20
     @Override
22 21
     public ClientDetails loadClientByClientId(String s) throws ClientRegistrationException {
23 22
 
24
-        AuthClient authClient = authClientMapper.get(s);
23
+        App app = appMapper.getByClientId(s);
25 24
 
26
-        if(null == authClient)
25
+        if(null == app)
27 26
             throw new ClientRegistrationException("incorrect client id");
28 27
 
29 28
         BaseClientDetails clientDetails = new BaseClientDetails();
30 29
         clientDetails.setClientId(s);
31
-        clientDetails.setClientSecret("{noop}" + authClient.getClientSecret());
30
+        clientDetails.setClientSecret("{noop}" + app.getClient_secret());
32 31
         clientDetails.setAuthorizedGrantTypes(Arrays.asList("authorization_code","client_credentials", "refresh_token", "password", "implicit"));
33 32
         clientDetails.setScope(Arrays.asList("*","all"));
34 33
         Set<String> uris = new HashSet<>();
35
-        uris.add(authClient.getRedirectUri());
34
+        uris.add(app.getRedirect_uri());
36 35
         clientDetails.setRegisteredRedirectUri(uris);
37 36
         clientDetails.setAccessTokenValiditySeconds(3600*24);
38 37
         return clientDetails;

+ 2 - 1
src/main/resources/application-c.properties

@@ -28,13 +28,14 @@ app.pdfpath=D:\\report-test\\pdf\\
28 28
 app.printerpath=D:/report-test/ZLReportPrint.exe
29 29
 app.table.user=k_user
30 30
 app.table.app_user=k_app_user
31
-
31
+app.default.app_id=100
32 32
 
33 33
 spring.jackson.default-property-inclusion=always
34 34
 
35 35
 mybatis.mapper-locations=classpath:mapper/*.xml
36 36
 mybatis.type-aliases-package=com.kingkong.bljs.dao
37 37
 mybatis.configuration.call-setters-on-nulls=true
38
+mybatis.configuration.map-underscore-to-camel-case=true
38 39
 
39 40
 spring.redis.database=0
40 41
 spring.redis.host=127.0.0.1

+ 2 - 1
src/main/resources/application-h.properties

@@ -28,7 +28,7 @@ app.pdfpath=D:\\report-test\\pdf\\
28 28
 app.printerpath=D:/report-test/ZLReportPrint.exe
29 29
 app.table.user=k_user
30 30
 app.table.app_user=k_app_user
31
-
31
+app.default.app_id=100
32 32
 
33 33
 
34 34
 spring.jackson.default-property-inclusion=always
@@ -36,6 +36,7 @@ spring.jackson.default-property-inclusion=always
36 36
 mybatis.mapper-locations=classpath:mapper/*.xml
37 37
 mybatis.type-aliases-package=com.kingkong.bljs.dao
38 38
 mybatis.configuration.call-setters-on-nulls=true
39
+mybatis.configuration.map-underscore-to-camel-case=true
39 40
 
40 41
 spring.redis.database=0
41 42
 spring.redis.host=127.0.0.1

+ 1 - 0
src/main/resources/application-his.properties

@@ -35,6 +35,7 @@ spring.jackson.default-property-inclusion=always
35 35
 mybatis.mapper-locations=classpath:mapper/*.xml
36 36
 mybatis.type-aliases-package=com.kingkong.bljs.dao
37 37
 mybatis.configuration.call-setters-on-nulls=true
38
+mybatis.configuration.map-underscore-to-camel-case=true
38 39
 
39 40
 spring.redis.database=0
40 41
 spring.redis.host=127.0.0.1

+ 145 - 0
src/main/resources/generatorConfig.xml

@@ -0,0 +1,145 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<!DOCTYPE generatorConfiguration
3
+        PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
4
+        "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
5
+<generatorConfiguration>
6
+    <!--导入属性配置 -->
7
+    <!--<properties resource="g-h.properties"></properties>-->
8
+
9
+    <!--指定特定数据库的jdbc驱动jar包的位置 -->
10
+    <!--<classPathEntry location="${jdbc.driverLocation}"/>-->
11
+
12
+    <context id="default" targetRuntime="MyBatis3">
13
+
14
+
15
+        <!-- optional,旨在创建class时,对注释进行控制 -->
16
+        <commentGenerator>
17
+            <property name="suppressDate" value="true" />
18
+        </commentGenerator>
19
+
20
+
21
+        <!--jdbc的数据库连接 -->
22
+        <jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver" connectionURL="jdbc:oracle:thin:@127.0.0.1:1521:orcl" userId="k_user" password="123">
23
+        </jdbcConnection>
24
+
25
+
26
+
27
+        <!-- 非必需,类型处理器,在数据库类型和java类型之间的转换控制-->
28
+        <javaTypeResolver >
29
+            <property name="forceBigDecimals" value="false" />
30
+        </javaTypeResolver>
31
+
32
+        <!-- Model模型生成器,用来生成含有主键key的类,记录类 以及查询Example类
33
+            targetPackage     指定生成的model生成所在的包名
34
+            targetProject     指定在该项目下所在的路径
35
+        -->
36
+        <javaModelGenerator targetPackage="com.kingkong.bljs.entity" targetProject="src/main/java">
37
+            <!-- 是否对model添加 构造函数 -->
38
+            <property name="constructorBased" value="true"/>
39
+
40
+            <!-- 是否允许子包,即targetPackage.schemaName.tableName -->
41
+            <property name="enableSubPackages" value="false"/>
42
+
43
+            <!-- 建立的Model对象是否 不可改变  即生成的Model对象不会有 setter方法,只有构造方法 -->
44
+            <property name="immutable" value="true"/>
45
+
46
+            <!-- 给Model添加一个父类 -->
47
+            <!--<property name="rootClass" value="com.foo.louis.Hello"/>-->
48
+
49
+            <!-- 是否对类CHAR类型的列的数据进行trim操作 -->
50
+            <property name="trimStrings" value="true"/>
51
+        </javaModelGenerator>
52
+
53
+        <!--Mapper映射文件生成所在的目录 为每一个数据库的表生成对应的SqlMap文件 -->
54
+        <sqlMapGenerator targetPackage="com.kingkong.bljs.dao" targetProject="src/main/java">
55
+            <property name="enableSubPackages" value="false"/>
56
+        </sqlMapGenerator>
57
+
58
+
59
+        <!-- 客户端代码,生成易于使用的针对Model对象和XML配置文件 的代码
60
+                type="ANNOTATEDMAPPER",生成Java Model 和基于注解的Mapper对象
61
+                type="MIXEDMAPPER",生成基于注解的Java Model 和相应的Mapper对象
62
+                type="XMLMAPPER",生成SQLMap XML文件和独立的Mapper接口
63
+        -->
64
+        <javaClientGenerator targetPackage="com.kingkong.bljs.dao" targetProject="src/main/java" type="MIXEDMAPPER">
65
+            <property name="enableSubPackages" value=""/>
66
+            <!--
67
+                    定义Maper.java 源代码中的ByExample() 方法的可视性,可选的值有:
68
+                    public;
69
+                    private;
70
+                    protected;
71
+                    default
72
+                    注意:如果 targetRuntime="MyBatis3",此参数被忽略
73
+             -->
74
+            <property name="exampleMethodVisibility" value=""/>
75
+            <!--
76
+                                           方法名计数器
77
+              Important note: this property is ignored if the target runtime is MyBatis3.
78
+             -->
79
+            <property name="methodNameCalculator" value=""/>
80
+
81
+            <!--
82
+                                                为生成的接口添加父接口
83
+             -->
84
+            <property name="rootInterface" value=""/>
85
+
86
+        </javaClientGenerator>
87
+
88
+
89
+
90
+        <table tableName="k_dictionary" schema="k_user">
91
+
92
+            <!-- optional   , only for mybatis3 runtime
93
+                 自动生成的键值(identity,或者序列值)
94
+               如果指定此元素,MBG将会生成<selectKey>元素,然后将此元素插入到SQL Map的<insert> 元素之中
95
+               sqlStatement 的语句将会返回新的值
96
+               如果是一个自增主键的话,你可以使用预定义的语句,或者添加自定义的SQL语句. 预定义的值如下:
97
+                  Cloudscape    This will translate to: VALUES IDENTITY_VAL_LOCAL()
98
+                  DB2:      VALUES IDENTITY_VAL_LOCAL()
99
+                  DB2_MF:       SELECT IDENTITY_VAL_LOCAL() FROM SYSIBM.SYSDUMMY1
100
+                  Derby:        VALUES IDENTITY_VAL_LOCAL()
101
+                  HSQLDB:   CALL IDENTITY()
102
+                  Informix:     select dbinfo('sqlca.sqlerrd1') from systables where tabid=1
103
+                  MySql:        SELECT LAST_INSERT_ID()
104
+                  SqlServer:    SELECT SCOPE_IDENTITY()
105
+                  SYBASE:   SELECT @@IDENTITY
106
+                  JDBC:     This will configure MBG to generate code for MyBatis3 suport of JDBC standard generated keys. This is a database independent method of obtaining the value from identity columns.
107
+                  identity: 自增主键  If true, then the column is flagged as an identity column and the generated <selectKey> element will be placed after the insert (for an identity column). If false, then the generated <selectKey> will be placed before the insert (typically for a sequence).
108
+
109
+            -->
110
+            <!--<generatedKey column="" sqlStatement="" identity="" type=""/>-->
111
+
112
+            <domainObjectRenamingRule searchString="^K" replaceString="" />
113
+            <!-- optional.
114
+                    列的命名规则:
115
+                    MBG使用 <columnRenamingRule> 元素在计算列名的对应 名称之前,先对列名进行重命名,
116
+                    作用:一般需要对BUSI_CLIENT_NO 前的BUSI_进行过滤
117
+                    支持正在表达式
118
+                     searchString 表示要被换掉的字符串
119
+                     replaceString 则是要换成的字符串,默认情况下为空字符串,可选
120
+            -->
121
+            <!--<columnRenamingRule searchString="^k" replaceString=""/>-->
122
+
123
+
124
+
125
+            <!-- optional.告诉 MBG 忽略某一列
126
+                    column,需要忽略的列
127
+                    delimitedColumnName:true ,匹配column的值和数据库列的名称 大小写完全匹配,false 忽略大小写匹配
128
+                    是否限定表的列名,即固定表列在Model中的名称
129
+            -->
130
+            <ignoreColumn column="PLAN_ID"  delimitedColumnName="true" />
131
+
132
+
133
+            <!--optional.覆盖MBG对Model 的生成规则
134
+                 column: 数据库的列名
135
+                 javaType: 对应的Java数据类型的完全限定名
136
+                 在必要的时候可以覆盖由JavaTypeResolver计算得到的java数据类型. For some databases, this is necessary to handle "odd" database types (e.g. MySql's unsigned bigint type should be mapped to java.lang.Object).
137
+                 jdbcType:该列的JDBC数据类型(INTEGER, DECIMAL, NUMERIC, VARCHAR, etc.),该列可以覆盖由JavaTypeResolver计算得到的Jdbc类型,对某些数据库而言,对于处理特定的JDBC 驱动癖好 很有必要(e.g. DB2's LONGVARCHAR type should be mapped to VARCHAR for iBATIS).
138
+                 typeHandler:
139
+
140
+            -->
141
+            <!--<columnOverride column="" javaType=""    jdbcType="" typeHandler=""  delimitedColumnName="" />-->
142
+
143
+        </table>
144
+    </context>
145
+</generatorConfiguration>