หน้าเว็บ
วันพุธที่ 23 ธันวาคม พ.ศ. 2558
วันอังคารที่ 22 ธันวาคม พ.ศ. 2558
วันพุธที่ 16 ธันวาคม พ.ศ. 2558
วันพุธที่ 2 ธันวาคม พ.ศ. 2558
วันอังคารที่ 1 ธันวาคม พ.ศ. 2558
วันจันทร์ที่ 30 พฤศจิกายน พ.ศ. 2558
วันศุกร์ที่ 20 พฤศจิกายน พ.ศ. 2558
วันพฤหัสบดีที่ 12 พฤศจิกายน พ.ศ. 2558
วันจันทร์ที่ 2 พฤศจิกายน พ.ศ. 2558
Vocab
Wiper
A "wiper" you have-- if you have car, I hope you need them.
They are on your windshield, and they go,"wicky, wicky, wicky,wicky,wiper."
They help to clear the rain or the other dead animals that fall onto your car off of your
windshield so you can see when you're driving.
A "wiper" you have-- if you have car, I hope you need them.
They are on your windshield, and they go,"wicky, wicky, wicky,wicky,wiper."
They help to clear the rain or the other dead animals that fall onto your car off of your
windshield so you can see when you're driving.
How to rectify module deployment error while using GlassFish Server?
Could not start GlassFish 4.0 (Windows) - port 1527 - Address already in use
วันศุกร์ที่ 30 ตุลาคม พ.ศ. 2558
วันจันทร์ที่ 12 ตุลาคม พ.ศ. 2558
ThaiFilter
public class ThaiFilter implements Filter {
public void init(FilterConfig filterConfig) throws ServletException {
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain)
throws IOException, ServletException {
request.setCharacterEncoding("UTF-8");
chain.doFilter(request, response);
}
public void destroy() {
}
}
--web.xml
<filter>
<filter-name>ThaiFilter</filter-name>
<filter-class>com.ThaiFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>ThaiFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
public void init(FilterConfig filterConfig) throws ServletException {
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain)
throws IOException, ServletException {
request.setCharacterEncoding("UTF-8");
chain.doFilter(request, response);
}
public void destroy() {
}
}
--web.xml
<filter>
<filter-name>ThaiFilter</filter-name>
<filter-class>com.ThaiFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>ThaiFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
วันพฤหัสบดีที่ 1 ตุลาคม พ.ศ. 2558
วันพุธที่ 30 กันยายน พ.ศ. 2558
วันอังคารที่ 29 กันยายน พ.ศ. 2558
bootstrap-datepicker
$('#hFromDate').val($('#fromDate').val());
$('#hToDate').val($('#toDate').val());
$('#fromDate').datepicker({
format: "dd/mm/yyyy",
})
.on('changeDate', function(ev){
$('#fromDate').change();
});
$('#fromDate').change(function(){
console.log($('#fromDate').val());
$('#hFromDate').val($('#fromDate').val())
});
$('#toDate').datepicker({
format: "dd/mm/yyyy",
})
.on('changeDate', function(ev){
$('#toDate').change();
});
$('#toDate').change(function(){
console.log($('#toDate').val());
$('#hToDate').val($('#toDate').val())
});
$('#hToDate').val($('#toDate').val());
$('#fromDate').datepicker({
format: "dd/mm/yyyy",
})
.on('changeDate', function(ev){
$('#fromDate').change();
});
$('#fromDate').change(function(){
console.log($('#fromDate').val());
$('#hFromDate').val($('#fromDate').val())
});
$('#toDate').datepicker({
format: "dd/mm/yyyy",
})
.on('changeDate', function(ev){
$('#toDate').change();
});
$('#toDate').change(function(){
console.log($('#toDate').val());
$('#hToDate').val($('#toDate').val())
});
วันอังคารที่ 22 กันยายน พ.ศ. 2558
วันเสาร์ที่ 19 กันยายน พ.ศ. 2558
Parameter Passing
ภาษา Java มีข้อกำหนดที่แตกต่างจากภาษาอื่นคือ
- ถ้า arguments ใดเป็นชนิดข้อมูลพื้นฐานจะถูกส่งค่าแบบ pass by value
- ถ้า arguments ใด้เป็น instances ของคลาสใดๆ จะถูกส่งค่าแบบ pass by reference
Primitive Type
ภาษา Java มีชนิดข้อมูลพื้นฐานที่มีมากับภาษา 8 ชนิด แบ่งเป็น 4 กลุ่มได้ดังนี้
- Truth Value คือ boolean(1bit) มีค่าเป็น true หรือ false เท่านั้น
- Integer คือ byte, short, int, long ตัวแปรของชนิดข้อมูลเหล่านี้สามารถเก็บค่าที่เป็นบวกหรือลบได้
- byte(8 bits) max = 127, min = -128
- short(16 bits) max = 32767, min = -32768
- int(32 bits) max = 2147483647, min = -2147483648
- long(64 bits) max = 9223372036854775807, min = -9223372036854775808
- float(32 bits) max = 3.4028235E38, min = 1.4E-45
- double(64 bits) max = 1.7976931348623157E308, min = 4.9-324
พิสูจน์ Normal Form (3NF)
พิสูจน์ Normal Form (3NF)
- ไม่มี Repeating groups (1NF)
- จะต้องไม่มีข้อมูลในคอลัมน์ใดที่มีข้อมูลมากกว่า 1 ค่า
- เป็น 1NF และทุกคอลัมน์ที่ไม่ใช่คีย์จะต้องขึ้นกับ Primary key โดยสมบูรณ์แม้ว่า Primary key จะ
เป็น composition key ก็ตาม
- เป็น 2NF และต้องไม่มีคอลัมน์ใดขึ้นต่อคอลัมน์อื่นที่ไม่ใช้ Primary key
วันจันทร์ที่ 14 กันยายน พ.ศ. 2558
วันเสาร์ที่ 12 กันยายน พ.ศ. 2558
Set Unicode in url
url="jdbc:mysql://localhost:3306/config?useUnicode=true&characterEncoding=utf8"
HikariCP Connection Pool
@Configuration
public class DataSourceConfig {
@Bean
public HikariDataSource dataSource() {
HikariConfig config = new HikariConfig();
config.setDriverClassName("com.mysql.jdbc.Driver");
config.setJdbcUrl("jdbc:mysql://localhost:3306/spring_boot");
config.setUsername("root");
config.setPassword("root");
config.setMaximumPoolSize(5);
config.setConnectionTestQuery("SELECT 1");
config.setPoolName("springHikariCP");
config.addDataSourceProperty("dataSource.cachePrepStmts", "true");
config.addDataSourceProperty("dataSource.prepStmtCacheSize", "250");
config.addDataSourceProperty("dataSource.prepStmtCacheSqlLimit", "2048");
config.addDataSourceProperty("dataSource.useServerPrepStmts", "true");
HikariDataSource ds = new HikariDataSource(config);
return ds;
}
}
public class DataSourceConfig {
@Bean
public HikariDataSource dataSource() {
HikariConfig config = new HikariConfig();
config.setDriverClassName("com.mysql.jdbc.Driver");
config.setJdbcUrl("jdbc:mysql://localhost:3306/spring_boot");
config.setUsername("root");
config.setPassword("root");
config.setMaximumPoolSize(5);
config.setConnectionTestQuery("SELECT 1");
config.setPoolName("springHikariCP");
config.addDataSourceProperty("dataSource.cachePrepStmts", "true");
config.addDataSourceProperty("dataSource.prepStmtCacheSize", "250");
config.addDataSourceProperty("dataSource.prepStmtCacheSqlLimit", "2048");
config.addDataSourceProperty("dataSource.useServerPrepStmts", "true");
HikariDataSource ds = new HikariDataSource(config);
return ds;
}
}
วันศุกร์ที่ 11 กันยายน พ.ศ. 2558
วันพฤหัสบดีที่ 10 กันยายน พ.ศ. 2558
วันพุธที่ 9 กันยายน พ.ศ. 2558
verify that the SQL Server Browser Service is running on the host
How to: Start and Stop the SQL Server Browser Service (SQL Server Express)
https://technet.microsoft.com/en-us/library/ms165734(v=sql.90).aspx
set JCO
http://www.ariscommunity.com/users/sascha-ding/2011-10-30-aris-sap-jco-3-faq
There are different distribution packages for various JRE versions and hardware processors available:
sapjco-ntintel-2.1.9.zip for a 32-bit JRE running on a 32-bit INTEL x86 or a 64-bit INTEL Itanium processor
sapjco-ntia64-2.1.9.zip for a 64-bit JRE running on a 64-bit INTEL Itanium processor
sapjco-ntamd64-2.1.9.tgz for a 64-bit JRE running on a 64-bit AMD or INTEL x86 processor
To install JCo for Windows unzip the appropriate distribution package into an arbitrary directory {sapjco-install-path}.
If you already have an older librfc32.dll in the {windows-dir}\system32 directory, please replace it with the one that comes with JCo.
Then add {sapjco-install-path} to the PATH environment variable.
Finally, add {sapjco-install-path}\sapjco.jar to your CLASSPATH environment variable.
There are different distribution packages for various JRE versions and hardware processors available:
sapjco-ntintel-2.1.9.zip for a 32-bit JRE running on a 32-bit INTEL x86 or a 64-bit INTEL Itanium processor
sapjco-ntia64-2.1.9.zip for a 64-bit JRE running on a 64-bit INTEL Itanium processor
sapjco-ntamd64-2.1.9.tgz for a 64-bit JRE running on a 64-bit AMD or INTEL x86 processor
To install JCo for Windows unzip the appropriate distribution package into an arbitrary directory {sapjco-install-path}.
If you already have an older librfc32.dll in the {windows-dir}\system32 directory, please replace it with the one that comes with JCo.
Then add {sapjco-install-path} to the PATH environment variable.
Finally, add {sapjco-install-path}\sapjco.jar to your CLASSPATH environment variable.
วันอังคารที่ 8 กันยายน พ.ศ. 2558
ให้ keyboard กดแป้น enter หรือ space ได้
$("#empId").keypress(function(event) {
if (event.which === 13) {//Enter
$('#btnSearch').focus().click();
}
if (event.which === 32) {//Space
$('#btnPay').focus().click();
}
});
if (event.which === 13) {//Enter
$('#btnSearch').focus().click();
}
if (event.which === 32) {//Space
$('#btnPay').focus().click();
}
});
รับค่าตัวเลขเท่านั้น
function checkNumber()
{
key = event.keyCode
if (key < 48 || key > 57)
event.returnValue = false;
}
onkeypress="checkNumber()"
{
key = event.keyCode
if (key < 48 || key > 57)
event.returnValue = false;
}
onkeypress="checkNumber()"
วันจันทร์ที่ 7 กันยายน พ.ศ. 2558
COMMON SPRING BOOT PROPERTIES
# =================================================================== # COMMON SPRING BOOT PROPERTIES # # This sample file is provided as a guideline. Do NOT copy it in its # entirety to your own application. ^^^ # =================================================================== # ---------------------------------------- # CORE PROPERTIES # ---------------------------------------- # SPRING CONFIG (ConfigFileApplicationListener) spring.config.name= # config file name (default to 'application') spring.config.location= # location of config file # PROFILES spring.profiles= # comma list of active profiles # APPLICATION SETTINGS (SpringApplication) spring.main.sources= spring.main.web-environment= # detect by default spring.main.show-banner=true spring.main....= # see class for all properties # LOGGING logging.path=/var/logs logging.file=myapp.log logging.config= # IDENTITY (ContextIdApplicationContextInitializer) spring.application.name= spring.application.index= # EMBEDDED SERVER CONFIGURATION (ServerProperties) server.port=8080 server.address= # bind to a specific NIC server.session-timeout= # session timeout in seconds server.context-path= # the context path, defaults to '/' server.servlet-path= # the servlet path, defaults to '/' server.tomcat.access-log-pattern= # log pattern of the access log server.tomcat.access-log-enabled=false # is access logging enabled server.tomcat.protocol-header=x-forwarded-proto # ssl forward headers server.tomcat.remote-ip-header=x-forwarded-for server.tomcat.basedir=/tmp # base dir (usually not needed, defaults to tmp) server.tomcat.background-processor-delay=30; # in seconds server.tomcat.max-threads = 0 # number of threads in protocol handler server.tomcat.uri-encoding = UTF-8 # character encoding to use for URL decoding # SPRING MVC (HttpMapperProperties) http.mappers.json-pretty-print=false # pretty print JSON http.mappers.json-sort-keys=false # sort keys spring.mvc.locale= # set fixed locale, e.g. en_UK spring.mvc.date-format= # set fixed date format, e.g. dd/MM/yyyy spring.mvc.message-codes-resolver-format= # PREFIX_ERROR_CODE / POSTFIX_ERROR_CODE spring.view.prefix= # MVC view prefix spring.view.suffix= # ... and suffix spring.resources.cache-period= # cache timeouts in headers sent to browser spring.resources.add-mappings=true # if default mappings should be added # THYMELEAF (ThymeleafAutoConfiguration) spring.thymeleaf.prefix=classpath:/templates/ spring.thymeleaf.suffix=.html spring.thymeleaf.mode=HTML5 spring.thymeleaf.encoding=UTF-8 spring.thymeleaf.content-type=text/html # ;charset=<encoding> is added spring.thymeleaf.cache=true # set to false for hot refresh # FREEMARKER (FreeMarkerAutoConfiguration) spring.freemarker.allowRequestOverride=false spring.freemarker.allowSessionOverride=false spring.freemarker.cache=true spring.freemarker.checkTemplateLocation=true spring.freemarker.contentType=text/html spring.freemarker.exposeRequestAttributes=false spring.freemarker.exposeSessionAttributes=false spring.freemarker.exposeSpringMacroHelpers=false spring.freemarker.prefix= spring.freemarker.requestContextAttribute= spring.freemarker.settings.*= spring.freemarker.suffix=.ftl spring.freemarker.templateEncoding=UTF-8 spring.freemarker.templateLoaderPath=classpath:/templates/ spring.freemarker.viewNames= # whitelist of view names that can be resolved # GROOVY TEMPLATES (GroovyTemplateAutoConfiguration) spring.groovy.template.allowRequestOverride=false spring.groovy.template.allowSessionOverride=false spring.groovy.template.cache=true spring.groovy.template.configuration.*= # See Groovy's TemplateConfiguration spring.groovy.template.contentType=text/html spring.groovy.template.prefix=classpath:/templates/ spring.groovy.template.suffix=.tpl spring.groovy.template.templateEncoding=UTF-8 spring.groovy.template.viewNames= # whitelist of view names that can be resolved # VELOCITY TEMPLATES (VelocityAutoConfiguration) spring.velocity.allowRequestOverride=false spring.velocity.allowSessionOverride=false spring.velocity.cache=true spring.velocity.checkTemplateLocation=true spring.velocity.contentType=text/html spring.velocity.dateToolAttribute= spring.velocity.exposeRequestAttributes=false spring.velocity.exposeSessionAttributes=false spring.velocity.exposeSpringMacroHelpers=false spring.velocity.numberToolAttribute= spring.velocity.prefix= spring.velocity.properties.*= spring.velocity.requestContextAttribute= spring.velocity.resourceLoaderPath=classpath:/templates/ spring.velocity.suffix=.vm spring.velocity.templateEncoding=UTF-8 spring.velocity.viewNames= # whitelist of view names that can be resolved # INTERNATIONALIZATION (MessageSourceAutoConfiguration) spring.messages.basename=messages spring.messages.cacheSeconds=-1 spring.messages.encoding=UTF-8 # SECURITY (SecurityProperties) security.user.name=user # login username security.user.password= # login password security.user.role=USER # role assigned to the user security.require-ssl=false # advanced settings ... security.enable-csrf=false security.basic.enabled=true security.basic.realm=Spring security.basic.path= # /** security.headers.xss=false security.headers.cache=false security.headers.frame=false security.headers.contentType=false security.headers.hsts=all # none / domain / all security.sessions=stateless # always / never / if_required / stateless security.ignored=false # DATASOURCE (DataSourceAutoConfiguration & DataSourceProperties) spring.datasource.name= # name of the data source spring.datasource.initialize=true # populate using data.sql spring.datasource.schema= # a schema (DDL) script resource reference spring.datasource.data= # a data (DML) script resource reference spring.datasource.platform= # the platform to use in the schema resource (schema-${platform}.sql) spring.datasource.continueOnError=false # continue even if can't be initialized spring.datasource.separator=; # statement separator in SQL initialization scripts spring.datasource.driverClassName= # JDBC Settings... spring.datasource.url= spring.datasource.username= spring.datasource.password= spring.datasource.max-active=100 # Advanced configuration... spring.datasource.max-idle=8 spring.datasource.min-idle=8 spring.datasource.initial-size=10 spring.datasource.validation-query= spring.datasource.test-on-borrow=false spring.datasource.test-on-return=false spring.datasource.test-while-idle= spring.datasource.time-between-eviction-runs-millis= spring.datasource.min-evictable-idle-time-millis= spring.datasource.max-wait-millis= # MONGODB (MongoProperties) spring.data.mongodb.host= # the db host spring.data.mongodb.port=27017 # the connection port (defaults to 27107) spring.data.mongodb.uri=mongodb://localhost/test # connection URL spring.data.mongo.repositories.enabled=true # if spring data repository support is enabled # JPA (JpaBaseConfiguration, HibernateJpaAutoConfiguration) spring.jpa.properties.*= # properties to set on the JPA connection spring.jpa.openInView=true spring.jpa.show-sql=true spring.jpa.database-platform= spring.jpa.database= spring.jpa.generate-ddl=false # ignored by Hibernate, might be useful for other vendors spring.jpa.hibernate.naming-strategy= # naming classname spring.jpa.hibernate.ddl-auto= # defaults to create-drop for embedded dbs spring.data.jpa.repositories.enabled=true # if spring data repository support is enabled # SOLR (SolrProperties}) spring.data.solr.host=http://127.0.0.1:8983/solr spring.data.solr.zkHost= spring.data.solr.repositories.enabled=true # if spring data repository support is enabled # ELASTICSEARCH (ElasticsearchProperties}) spring.data.elasticsearch.cluster-name= # The cluster name (defaults to elasticsearch) spring.data.elasticsearch.cluster-nodes= # The address(es) of the server node (comma-separated; if not specified starts a client node) spring.data.elasticsearch.local=true # if local mode should be used with client nodes spring.data.elasticsearch.repositories.enabled=true # if spring data repository support is enabled # FLYWAY (FlywayProperties) flyway.locations=classpath:db/migrations # locations of migrations scripts flyway.schemas= # schemas to update flyway.initVersion= 1 # version to start migration flyway.prefix=V flyway.suffix=.sql flyway.enabled=true flyway.url= # JDBC url if you want Flyway to create its own DataSource flyway.user= # JDBC username if you want Flyway to create its own DataSource flyway.password= # JDBC password if you want Flyway to create its own DataSource # LIQUIBASE (LiquibaseProperties) liquibase.change-log=classpath:/db/changelog/db.changelog-master.yaml liquibase.contexts= # runtime contexts to use liquibase.default-schema= # default database schema to use liquibase.drop-first=false liquibase.enabled=true # JMX spring.jmx.enabled=true # Expose MBeans from Spring # RABBIT (RabbitProperties) spring.rabbitmq.host= # connection host spring.rabbitmq.port= # connection port spring.rabbitmq.addresses= # connection addresses (e.g. myhost:9999,otherhost:1111) spring.rabbitmq.username= # login user spring.rabbitmq.password= # login password spring.rabbitmq.virtualhost= spring.rabbitmq.dynamic= # REDIS (RedisProperties) spring.redis.host=localhost # server host spring.redis.password= # server password spring.redis.port=6379 # connection port spring.redis.pool.max-idle=8 # pool settings ... spring.redis.pool.min-idle=0 spring.redis.pool.max-active=8 spring.redis.pool.max-wait=-1 # ACTIVEMQ (ActiveMQProperties) spring.activemq.broker-url=tcp://localhost:61616 # connection URL spring.activemq.user= spring.activemq.password= spring.activemq.in-memory=true # broker kind to create if no broker-url is specified spring.activemq.pooled=false # HornetQ (HornetQProperties) spring.hornetq.mode= # connection mode (native, embedded) spring.hornetq.host=localhost # hornetQ host (native mode) spring.hornetq.port=5445 # hornetQ port (native mode) spring.hornetq.embedded.enabled=true # if the embedded server is enabled (needs hornetq-jms-server.jar) spring.hornetq.embedded.serverId= # auto-generated id of the embedded server (integer) spring.hornetq.embedded.persistent=false # message persistence spring.hornetq.embedded.data-directory= # location of data content (when persistence is enabled) spring.hornetq.embedded.queues= # comma separate queues to create on startup spring.hornetq.embedded.topics= # comma separate topics to create on startup spring.hornetq.embedded.cluster-password= # customer password (randomly generated by default) # JMS (JmsProperties) spring.jms.pub-sub-domain= # false for queue (default), true for topic # SPRING BATCH (BatchDatabaseInitializer) spring.batch.job.names=job1,job2 spring.batch.job.enabled=true spring.batch.initializer.enabled=true spring.batch.schema= # batch schema to load # AOP spring.aop.auto= spring.aop.proxy-target-class= # FILE ENCODING (FileEncodingApplicationListener) spring.mandatory-file-encoding=false # SPRING SOCIAL (SocialWebAutoConfiguration) spring.social.auto-connection-views=true # Set to true for default connection views or false if you provide your own # SPRING SOCIAL FACEBOOK (FacebookAutoConfiguration) spring.social.facebook.app-id= # your application's Facebook App ID spring.social.facebook.app-secret= # your application's Facebook App Secret # SPRING SOCIAL LINKEDIN (LinkedInAutoConfiguration) spring.social.linkedin.app-id= # your application's LinkedIn App ID spring.social.linkedin.app-secret= # your application's LinkedIn App Secret # SPRING SOCIAL TWITTER (TwitterAutoConfiguration) spring.social.twitter.app-id= # your application's Twitter App ID spring.social.twitter.app-secret= # your application's Twitter App Secret # SPRING MOBILE SITE PREFERENCE (SitePreferenceAutoConfiguration) spring.mobile.sitepreference.enabled=true # enabled by default # SPRING MOBILE DEVICE VIEWS (DeviceDelegatingViewResolverAutoConfiguration) spring.mobile.devicedelegatingviewresolver.enabled=true # disabled by default spring.mobile.devicedelegatingviewresolver.normalPrefix= spring.mobile.devicedelegatingviewresolver.normalSuffix= spring.mobile.devicedelegatingviewresolver.mobilePrefix=mobile/ spring.mobile.devicedelegatingviewresolver.mobileSuffix= spring.mobile.devicedelegatingviewresolver.tabletPrefix=tablet/ spring.mobile.devicedelegatingviewresolver.tabletSuffix= # ---------------------------------------- # ACTUATOR PROPERTIES # ---------------------------------------- # MANAGEMENT HTTP SERVER (ManagementServerProperties) management.port= # defaults to 'server.port' management.address= # bind to a specific NIC management.contextPath= # default to '/' # ENDPOINTS (AbstractEndpoint subclasses) endpoints.autoconfig.id=autoconfig endpoints.autoconfig.sensitive=true endpoints.autoconfig.enabled=true endpoints.beans.id=beans endpoints.beans.sensitive=true endpoints.beans.enabled=true endpoints.configprops.id=configprops endpoints.configprops.sensitive=true endpoints.configprops.enabled=true endpoints.configprops.keys-to-sanitize=password,secret endpoints.dump.id=dump endpoints.dump.sensitive=true endpoints.dump.enabled=true endpoints.env.id=env endpoints.env.sensitive=true endpoints.env.enabled=true endpoints.health.id=health endpoints.health.sensitive=false endpoints.health.enabled=true endpoints.info.id=info endpoints.info.sensitive=false endpoints.info.enabled=true endpoints.metrics.id=metrics endpoints.metrics.sensitive=true endpoints.metrics.enabled=true endpoints.shutdown.id=shutdown endpoints.shutdown.sensitive=true endpoints.shutdown.enabled=false endpoints.trace.id=trace endpoints.trace.sensitive=true endpoints.trace.enabled=true # MVC ONLY ENDPOINTS endpoints.jolokia.path=jolokia endpoints.jolokia.sensitive=true endpoints.jolokia.enabled=true # when using Jolokia endpoints.error.path=/error # JMX ENDPOINT (EndpointMBeanExportProperties) endpoints.jmx.enabled=true endpoints.jmx.domain= # the JMX domain, defaults to 'org.springboot' endpoints.jmx.unique-names=false endpoints.jmx.enabled=true endpoints.jmx.staticNames= # JOLOKIA (JolokiaProperties) jolokia.config.*= # See Jolokia manual # REMOTE SHELL shell.auth=simple # jaas, key, simple, spring shell.command-refresh-interval=-1 shell.command-path-pattern= # classpath*:/commands/**, classpath*:/crash/commands/** shell.config-path-patterns= # classpath*:/crash/* shell.disabled-plugins=false # don't expose plugins shell.ssh.enabled= # ssh settings ... shell.ssh.keyPath= shell.ssh.port= shell.telnet.enabled= # telnet settings ... shell.telnet.port= shell.auth.jaas.domain= # authentication settings ... shell.auth.key.path= shell.auth.simple.user.name= shell.auth.simple.user.password= shell.auth.spring.roles= # GIT INFO spring.git.properties= # resource ref to generated git info properties file
credit: http://lessons4dev.blogspot.com/2014/06/common-spring-boot-properties.html
วันพฤหัสบดีที่ 3 กันยายน พ.ศ. 2558
วันพุธที่ 2 กันยายน พ.ศ. 2558
SQL Error
java.lang.RuntimeException: com.microsoft.sqlserver.jdbc.SQLServerException: String or binary data would be truncated.
คือ จำนวนฟิวด์ไม่พอดีกับจำนวน Data หรือว่า Insert ค่าลงผิดประเภทของฟิวด์
วันศุกร์ที่ 28 สิงหาคม พ.ศ. 2558
Laravel Step by Step
สร้างโปรเจ็ค laravel ด้วย composer
- C:\xampp\htdocs composer create project laravel/laravel project-name --perfer -dist
สร้าง Controller
- C:\xampp\htdocs\project-name php artisan make:controller NameController หรือ
C:\xampp\htdocs\project-name php artisan make:controller NameController --plain
ลง illuminate/html ด้วย composer (input form)
- composer require illuminate/html
เพิ่ม Service Providers ที่ config\app.php
Illuminate\Html\HtmlServiceProvider::class,
เพิ่ม Class Aliases
'Form' => Illuminate\Html\FormFacades::class,
'Html' => Illuminate\Html\HtmlFacades::class,
สร้าง Model
- C:\xampp\htdocs\project-name php artisan make:model Model/ModelName
Set Datasource
- ที่ Config\Database.php
ลบที่ .env ออกด้วย
สร้าง migration
- php artisan make:migration create_table-name_table
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('student', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('email')->unique();
$table->rememberToken();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('student');
}
- php artisan migrate
- C:\xampp\htdocs composer create project laravel/laravel project-name --perfer -dist
สร้าง Controller
- C:\xampp\htdocs\project-name php artisan make:controller NameController หรือ
C:\xampp\htdocs\project-name php artisan make:controller NameController --plain
ลง illuminate/html ด้วย composer (input form)
- composer require illuminate/html
เพิ่ม Service Providers ที่ config\app.php
Illuminate\Html\HtmlServiceProvider::class,
เพิ่ม Class Aliases
'Form' => Illuminate\Html\FormFacades::class,
'Html' => Illuminate\Html\HtmlFacades::class,
สร้าง Model
- C:\xampp\htdocs\project-name php artisan make:model Model/ModelName
Set Datasource
- ที่ Config\Database.php
ลบที่ .env ออกด้วย
สร้าง migration
- php artisan make:migration create_table-name_table
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('student', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('email')->unique();
$table->rememberToken();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('student');
}
- php artisan migrate
วันอังคารที่ 25 สิงหาคม พ.ศ. 2558
วันศุกร์ที่ 21 สิงหาคม พ.ศ. 2558
วันอังคารที่ 18 สิงหาคม พ.ศ. 2558
วันอาทิตย์ที่ 16 สิงหาคม พ.ศ. 2558
วันพฤหัสบดีที่ 13 สิงหาคม พ.ศ. 2558
วันศุกร์ที่ 7 สิงหาคม พ.ศ. 2558
วันพุธที่ 15 กรกฎาคม พ.ศ. 2558
วันอังคารที่ 14 กรกฎาคม พ.ศ. 2558
Gradle DSL method not found: 'runProguard'
old:
buildTypes {
release {
runProguard false // this line has to be changed
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
new:
buildTypes {
release {
minifyEnabled false // new version
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
วันจันทร์ที่ 13 กรกฎาคม พ.ศ. 2558
วันอาทิตย์ที่ 12 กรกฎาคม พ.ศ. 2558
iReport แถบ(Band)
รายงานแบ่งออกเป็นส่วนๆ แต่ละส่วนเรียกว่าแถบ (band) ในตอนแรกที่สร้างรายงานใหม่ จะมีแถบต่างๆดังนี้
+ Title แถบไทเทิลเป็นแถบแรกที่จะถูกพิมพ์ และจะถูกพิมพ์แต่ครั้งเดียว เราอาจจะใส่ชื่อรายงานหรือโลโก้ของบริษัทไว้ในแถบนี้
ถ้าต้องการให้พิมพ์ Title เพียงอย่างเดียวในหน้าแรก ให้ทำตามขั้นตอนต่อไปนี้
- ไปที่ Report Inspector
- คลิกขวาที่ report name เลือกที่ Properties
- ติ๊กถูก Title on a new page
+ Page Header และ Footer คือหัวกระดาษและท้ายกระดาษ เราอาจจะใส่เลขหน้าไว้ในแถบเหล่านี้
+ Column Header และ Footer คือหัวและท้ายคอลัมน์ ใช้ในกรณีที่แสดงรายงานแบบหลายคอลัมน์
การกำหนดจำนวนคอลัมน์ ให้ทำตามขั้นตอนต่อไปนี้
- ไปที่ Report Inspector
- คลิกขวาที่ report name เลือก Properties
- Columns : จำนวนคอลัมน์ที่ต้องการ
+ Detail แสดงข้อมูลแต่ละแถวที่อ่านจากแหล่งข้อมูล แถบนี้ถูกพิมพ์ซ้ำตามข้อมูลที่อ่านเข้ามา โดยปกติเราจะนำฟิลด์มาวางไว้ในแถบนี้
+ Summary แสดงสรุปรายงาน เราอาจจะนำผลรวมหรือค่าเฉลี่ยของฟิลด์ที่เป็นตัวเลขมาวางไว้ในแถบนี้
ถ้าต้องการให้พิมพ์ Summary เพียงอย่างเดียวในหน้าสุดท้าย ให้ทำตามขั้นตอนต่อไปนี้
- ไปที่ Report Inspector
- คลิกขวาที่ report name เลือก Properties
- ติ๊กถูก Summary on a new page
- ไปที่ Report Inspector
- คลิกขวาที่ report name เลือกที่ Properties
- ติ๊กถูก Title on a new page
+ Page Header และ Footer คือหัวกระดาษและท้ายกระดาษ เราอาจจะใส่เลขหน้าไว้ในแถบเหล่านี้
+ Column Header และ Footer คือหัวและท้ายคอลัมน์ ใช้ในกรณีที่แสดงรายงานแบบหลายคอลัมน์
การกำหนดจำนวนคอลัมน์ ให้ทำตามขั้นตอนต่อไปนี้
- ไปที่ Report Inspector
- คลิกขวาที่ report name เลือก Properties
- Columns : จำนวนคอลัมน์ที่ต้องการ
+ Detail แสดงข้อมูลแต่ละแถวที่อ่านจากแหล่งข้อมูล แถบนี้ถูกพิมพ์ซ้ำตามข้อมูลที่อ่านเข้ามา โดยปกติเราจะนำฟิลด์มาวางไว้ในแถบนี้
+ Summary แสดงสรุปรายงาน เราอาจจะนำผลรวมหรือค่าเฉลี่ยของฟิลด์ที่เป็นตัวเลขมาวางไว้ในแถบนี้
ถ้าต้องการให้พิมพ์ Summary เพียงอย่างเดียวในหน้าสุดท้าย ให้ทำตามขั้นตอนต่อไปนี้
- ไปที่ Report Inspector
- คลิกขวาที่ report name เลือก Properties
- ติ๊กถูก Summary on a new page
วันศุกร์ที่ 10 กรกฎาคม พ.ศ. 2558
วันพฤหัสบดีที่ 9 กรกฎาคม พ.ศ. 2558
วันจันทร์ที่ 6 กรกฎาคม พ.ศ. 2558
วันอังคารที่ 30 มิถุนายน พ.ศ. 2558
วันพฤหัสบดีที่ 25 มิถุนายน พ.ศ. 2558
วันพุธที่ 24 มิถุนายน พ.ศ. 2558
วันอังคารที่ 23 มิถุนายน พ.ศ. 2558
วันอาทิตย์ที่ 21 มิถุนายน พ.ศ. 2558
วันศุกร์ที่ 19 มิถุนายน พ.ศ. 2558
วิธีกดAlt+ตัวเลข...เป็นสัญลักษณ์ต่างๆ
วิธีกดAlt+ตัวเลข...เป็นสัญลักษณ์ต่างๆ
บางชนิดไม่รองรับ Font ที่เราใช้อยู่
Grave Accent = `
ALT+1 = ☺
ALT+2 = ☻
ALT+3 = ♥
ALT+4 = ♦
ALT+5 = ♣
ALT+6 = ♠
ALT+7 = •
ALT+8 = ◘
ALT+9 = ○
ALT+10 = ◙
ALT+11 = ♂
ALT+12 = ♀
ALT+13 = ♪
ALT+14 = ♫
ALT+15 = ☼
ALT+16 = ►
ALT+17 = ◄
ALT+18 = ↕
ALT+23 = ↨
ALT+24 = ↑
ALT+25 = ↓
ALT+26 = →
ALT+27 = ←
ALT+28 = ∟
ALT+29 = ↔
ALT+30 = ▲
ALT+31 = ▼
ALT+32 = เป็นเว้นวรรค หรือเคาะจาก space bar ก็ได้
ALT+33 = !
ALT+34 = "
ALT+35 = #
ALT+36 = $
ALT+37 = %
ALT+38 = &
ALT+39 = '
ALT+40 = (
ALT+41 = )
ALT+42 = *
ALT+43 = +
ALT+44 = ,
ALT+45 = -
ALT+46 = .
ALT+47 = /
ALT+48 = 0
ALT+49 = 1
ALT+50 = 2
ALT+51 = 3
ALT+52 = 4
ALT+53 = 5
ALT+54 = 6
ALT+55 = 7
ALT+56 = 8
ALT+57 = 9
ALT+58 = :
ALT+59 = ;
ALT+60 = <
ALT+61 = =
ALT+62 = >
ALT+63 = ?
ALT+64 = @
ALT+65 = A
ALT+66 = B
ALT+67 = C
ALT+68 = D
ALT+69 = E
ALT+70 = F
ALT+71 = G
ALT+72 = H
ALT+73 = I
ALT+74 = J
ALT+75 = K
ALT+76 = L
ALT+77 = M
ALT+78 = N
ALT+79 = O
ALT+80 = P
ALT+81 = Q
ALT+82 = R
ALT+83 = S
ALT+84 = T
ALT+85 = U
ALT+86 = V
ALT+87 = W
ALT+88 = X
ALT+89 = Y
ALT+90 = Z
ALT+91 = [
ALT+92 = \
ALT+93 = ]
ALT+94 = ^
ALT+95 = _
ALT+96 = `
ALT+97 = a
ALT+98 = b
ALT+99 = c
ALT+100 = d
ALT+101 = e
ALT+102 = f
ALT+103 = g
ALT+104 = h
ALT+105 = i
ALT+106 = j
ALT+107 = k
ALT+108 = l
ALT+109 = m
ALT+110 = n
ALT+111 = o
ALT+112 = p
ALT+113 = q
ALT+114 = r
ALT+115 = s
ALT+116 = t
ALT+117 = u
ALT+118 = v
ALT+119 = w
ALT+120 = x
ALT+121 = y
ALT+122 = z
ALT+123 = {
ALT+124 = |
ALT+125 = }
ALT+126 = ~
ALT+127 = ⌂
ALT+128 = €
ALT+133 = …
ALT+145 = ‘
ALT+146 = ’
ALT+147 = “
ALT+148 = ”
ALT+149 = •
ALT+150 = –
ALT+151 = —
ALT+161 = ก
ALT+162 = ข
ALT+163 = ฃ
ALT+164 = ค
ALT+165 = ฅ
ALT+166 = ฆ
ALT+167 = ง
ALT+168 = จ
ALT+169 = ฉ
ALT+170 = ช
ALT+171 = ซ
ALT+172 = ฌ
ALT+173 = ญ
ALT+174 = ฎ
ALT+175 = ฏ
ALT+176 = ฐ
ALT+177 = ฑ
ALT+178 = ฒ
ALT+179 = ณ
ALT+180 = ด
ALT+181 = ต
ALT+182 = ถ
ALT+183 = ท
ALT+184 = ธ
ALT+185 = น
ALT+186 = บ
ALT+187 = ป
ALT+188 = ผ
ALT+189 = ฝ
ALT+190 = พ
ALT+191 = ฟ
ALT+192 = ภ
ALT+193 = ม
ALT+194 = ย
ALT+195 = ร
ALT+196 = ฤ
ALT+197 = ล
ALT+198 = ฦ
ALT+199 = ว
ALT+200 = ศ
ALT+201 = ษ
ALT+202 = ส
ALT+203 = ห
ALT+204 = ฬ
ALT+205 = อ
ALT+206 = ฮ
อื่น ๆ
ALT+239 = ๏
ALT+251 = ๛
ALT+255 =
ALT+0153 = ™
ALT+0169 = ®
มีALT+0160=เว้นว่างไว้
ALT+0149=ฺ •
ALT+150 ๛
ALT+250 ๚
ALT+380 |
ALT+410 �
บางชนิดไม่รองรับ Font ที่เราใช้อยู่
Grave Accent = `
ALT+1 = ☺
ALT+2 = ☻
ALT+3 = ♥
ALT+4 = ♦
ALT+5 = ♣
ALT+6 = ♠
ALT+7 = •
ALT+8 = ◘
ALT+9 = ○
ALT+10 = ◙
ALT+11 = ♂
ALT+12 = ♀
ALT+13 = ♪
ALT+14 = ♫
ALT+15 = ☼
ALT+16 = ►
ALT+17 = ◄
ALT+18 = ↕
ALT+23 = ↨
ALT+24 = ↑
ALT+25 = ↓
ALT+26 = →
ALT+27 = ←
ALT+28 = ∟
ALT+29 = ↔
ALT+30 = ▲
ALT+31 = ▼
ALT+32 = เป็นเว้นวรรค หรือเคาะจาก space bar ก็ได้
ALT+33 = !
ALT+34 = "
ALT+35 = #
ALT+36 = $
ALT+37 = %
ALT+38 = &
ALT+39 = '
ALT+40 = (
ALT+41 = )
ALT+42 = *
ALT+43 = +
ALT+44 = ,
ALT+45 = -
ALT+46 = .
ALT+47 = /
ALT+48 = 0
ALT+49 = 1
ALT+50 = 2
ALT+51 = 3
ALT+52 = 4
ALT+53 = 5
ALT+54 = 6
ALT+55 = 7
ALT+56 = 8
ALT+57 = 9
ALT+58 = :
ALT+59 = ;
ALT+60 = <
ALT+61 = =
ALT+62 = >
ALT+63 = ?
ALT+64 = @
ALT+65 = A
ALT+66 = B
ALT+67 = C
ALT+68 = D
ALT+69 = E
ALT+70 = F
ALT+71 = G
ALT+72 = H
ALT+73 = I
ALT+74 = J
ALT+75 = K
ALT+76 = L
ALT+77 = M
ALT+78 = N
ALT+79 = O
ALT+80 = P
ALT+81 = Q
ALT+82 = R
ALT+83 = S
ALT+84 = T
ALT+85 = U
ALT+86 = V
ALT+87 = W
ALT+88 = X
ALT+89 = Y
ALT+90 = Z
ALT+91 = [
ALT+92 = \
ALT+93 = ]
ALT+94 = ^
ALT+95 = _
ALT+96 = `
ALT+97 = a
ALT+98 = b
ALT+99 = c
ALT+100 = d
ALT+101 = e
ALT+102 = f
ALT+103 = g
ALT+104 = h
ALT+105 = i
ALT+106 = j
ALT+107 = k
ALT+108 = l
ALT+109 = m
ALT+110 = n
ALT+111 = o
ALT+112 = p
ALT+113 = q
ALT+114 = r
ALT+115 = s
ALT+116 = t
ALT+117 = u
ALT+118 = v
ALT+119 = w
ALT+120 = x
ALT+121 = y
ALT+122 = z
ALT+123 = {
ALT+124 = |
ALT+125 = }
ALT+126 = ~
ALT+127 = ⌂
ALT+128 = €
ALT+133 = …
ALT+145 = ‘
ALT+146 = ’
ALT+147 = “
ALT+148 = ”
ALT+149 = •
ALT+150 = –
ALT+151 = —
ALT+161 = ก
ALT+162 = ข
ALT+163 = ฃ
ALT+164 = ค
ALT+165 = ฅ
ALT+166 = ฆ
ALT+167 = ง
ALT+168 = จ
ALT+169 = ฉ
ALT+170 = ช
ALT+171 = ซ
ALT+172 = ฌ
ALT+173 = ญ
ALT+174 = ฎ
ALT+175 = ฏ
ALT+176 = ฐ
ALT+177 = ฑ
ALT+178 = ฒ
ALT+179 = ณ
ALT+180 = ด
ALT+181 = ต
ALT+182 = ถ
ALT+183 = ท
ALT+184 = ธ
ALT+185 = น
ALT+186 = บ
ALT+187 = ป
ALT+188 = ผ
ALT+189 = ฝ
ALT+190 = พ
ALT+191 = ฟ
ALT+192 = ภ
ALT+193 = ม
ALT+194 = ย
ALT+195 = ร
ALT+196 = ฤ
ALT+197 = ล
ALT+198 = ฦ
ALT+199 = ว
ALT+200 = ศ
ALT+201 = ษ
ALT+202 = ส
ALT+203 = ห
ALT+204 = ฬ
ALT+205 = อ
ALT+206 = ฮ
อื่น ๆ
ALT+239 = ๏
ALT+251 = ๛
ALT+255 =
ALT+0153 = ™
ALT+0169 = ®
มีALT+0160=เว้นว่างไว้
ALT+0149=ฺ •
ALT+150 ๛
ALT+250 ๚
ALT+380 |
ALT+410 �
สมัครสมาชิก:
ความคิดเห็น (Atom)

