ㅡㅡ

분류없음 2016.12.04 23:58
ㅡㅡ

저작자 표시
신고
Posted by beans9 AHM

스컬트라100 무게 

M/L 540 : 9.4kg

S/M 520 : 9.36kg

타사이트펌 : http://blog.naver.com/torquecho/220395791735


트랙 1.1 무게, 

540 : 10kg 넘는거 같다;;;



저작자 표시
신고

'Bicycle > TIP' 카테고리의 다른 글

[입문형로드/무게] 스컬트라 100 무게  (0) 2015.08.06
Posted by beans9 AHM

이번 포스팅의 목표는 db연결 및 log4sql을 통한 sql query 출력입니다. 

접속 DB는 mysql을 기준으로 합니다.(Oracle도 크게 다르지 않습니다.)


앞서서 기본 화면 까지 호출되었다는 가정하에 진행합니다. 


1. pom.xml 에 db관련 라이브러리 추가.

   <!-- DB -->

<dependency>

<groupId>mysql</groupId>

<artifactId>mysql-connector-java</artifactId>

<version>5.1.36</version>

</dependency>

<dependency>

<groupId>commons-dbcp</groupId>

<artifactId>commons-dbcp</artifactId>

<version>1.4</version>

</dependency>


<dependency>

<groupId>org.mybatis</groupId>

<artifactId>mybatis</artifactId>

<version>3.0.6</version>

</dependency>

<dependency>

 <groupId>org.mybatis</groupId>

 <artifactId>mybatis-spring</artifactId>

 <version>1.0.2</version>

</dependency>


2. 프로젝트 우클릭 Run As -> Maven Install


3. src/main/resources 폴더에 conf 폴더 생성 후 db.properties 파일을 생성 후 아래와 같이 작성

(빨간색 부분은 본인 설정에 맞게 설정하시면 됩니다)

db.driverClassName=com.mysql.jdbc.Driver

db.url=jdbc:mysql://127.0.0.1:3306/스키마

db.username=아이디

db.password=패스워드


3. mysql 접속 후 테이블 생성 후 샘플데이터 insert

create table member(

id_no INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,

login_id VARCHAR(20) NOT NULL,

login_pw CHAR(64)  NOT NULL

);


insert into member (login_id, login_pw) 

values ('admin', password('admin1234'));


4. src/main/resources 폴더에 sql 폴더 생성 후 member.xml 파일을 생성 후 아래와 같이 작성

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" 

  "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="member">

<select id="getMember" resultType="hashMap">

    select * from MEMBER

  </select>

</mapper>  


5. src/main/webapp/WEB-INF/spring/root-context.xml 파일에 db관련 설정사항 추가

<!-- Root Context: defines shared resources visible to all other web components -->

<!-- db setting -->

<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">

<property name="locations">

<list>

<value>classpath:conf/db.properties</value>

</list>

</property>

</bean>

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">

   <property name="driverClassName" value="${db.driverClassName}"/>

   <property name="url" value="${db.url}"/>

   <property name="username" value="${db.username}"/>

   <property name="password" value="${db.password}"/>

  </bean>

 

  <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">

 <property name="dataSource" ref="dataSource" />

 <property name="mapperLocations" value="classpath:sql/*.xml" />

</bean>

<bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">

 <constructor-arg index="0" ref="sqlSessionFactory" />

</bean>


6. HomeController.java 파일에 해당 컨트롤러 쿼리 조회문 추가 후 데이터를 제데로 불러오는지 확인.

1개의 데이터를 insert했으니, 총 결과건수 1나오면 정상

package com.dparts.com;


import java.util.List;

import java.util.Locale;


import org.apache.ibatis.session.SqlSession;

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;

import org.springframework.ui.Model;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestMethod;


/**

 * Handles requests for the application home page.

 */

@Controller

public class HomeController {

private static final Logger logger = LoggerFactory.getLogger(HomeController.class);

@Autowired

private SqlSession sqlSession; 

/**

* Simply selects the home view to render by returning its name.

*/

@RequestMapping(value = "/", method = RequestMethod.GET)

public String home(Locale locale, Model model) {

List list = sqlSession.selectList("getMember");

logger.info("ListCount = {}.", list.size());

return "home";

}

}


--> 결과..

INFO : com.dparts.com.HomeController - ListCount= 1.


7.정상적으로 db접속 후 조회 해오는걸 확인했으니, log4sql을 사용해 쿼리 로그를 확인한다. 

-> log4sql란 jdbc를 이용하여 DB에 동작하는 쿼리로그를 찍어주는 라이브러리. 

    http://log4sql.sourceforge.net/ 사이트에서 다운받을수 있다. 

   사용법이 매우 간단하나 가급적이면 개발서버에서만 적용하고 실제 운영서버에서는 사용하지 않는것을 권장.


src/main/webapp/WEB-INF/lib 폴더를 생성 후 다운받은 log4sql.jar 파일을 추가한다. 

3번에서 작성했던 db.properties에서 아래와 같이 변경 후 WAS를 재기동

db.driverClassName=com.mysql.jdbc.Driver 

를 아래와 같이 변경

db.driverClassName=core.log.jdbc.driver.MysqlDriver


6번 동작을 다시한번 해보면 console창에 쿼리가 나오는것을 확인할 수 있다. 

결과 >>

[2015-08-02 15:36:40] [DEBUG]『org.apache.ibatis.executor.statement.RoutingStatementHandler:query(55)』 Elapsed Time [0:00:00.000]


    select

        * 

    from

        MEMBER



[2015-08-02 15:36:40] [DEBUG]『org.apache.ibatis.executor.statement.PreparedStatementHandler:query(40)』 Elapsed Time [0:00:00.000]


    select

        * 

    from

        MEMBER

Query Result[]: -1row


INFO : com.dparts.com.HomeController - ListCount = 1.



그런데 select쿼리에 경우 두번씩 나온다.. 이건 나중에 해결하도록 하고.. 

여기까지 했으면 기본적인 DB접속 및 쿼리 조회까지 완료






저작자 표시
신고
Posted by beans9 AHM

STS를 이용한 기본환경 구축! (목표: 10분안에 하기)


1. 제일먼저 STS를 설치한다. 


2. STS실행


3. 새로운 프로젝트 생성

- File -> New -> Spring Project


4. Spring MVC Project 선택 후 다음


5. maven을 사용하기 떄문에 패키지명을 설정해줘야한다. 

    xxx.xxx.xxx <-요런식으로 설정해줘야함.


6. 생성된 프로젝트를 WAS로 구동한다.

- 프로젝트 우클릭 -> Run As -> Run on Server


7. WAS선택 

- 기본 설치되어있는 Pivotal을 설정해서 해줬는데, Tomcat을 설치해서 사용해도 된다. 


8. 프로젝트를 Server에 등록


9. 구동후 웹페이지 확인

- 한글이 깨진다


10. JSP페이지 가서  pageEncoding를 UTF-8로 선언해준 후 다시 확인 


11. 한글이 제대로 나오는지 확인


이렇게 해서 STS를 이용한 기본 웹개발 환경을 만들어보았다. 

이렇게 따라했다면 10분도 안되서 기본환경을 구축했으리라 생각한다. 

다음편에서는 DB설정과 로그인 기능 구현을 해보도록 하겠다.


저작자 표시
신고
Posted by beans9 AHM

* 목표 

- STS를 이용하여 SPRING을 이용한 간단한 쇼핑몰 만들기


* 환경

- JAVA 1.6

- Spring 3.1

- Tomcat6, (개발시에는 Pivotal)

- MySql

- STS  3.6.3

- Maven

- Git

- 어느정도 개발경험이 있다고 생각하고 진행 할 예정입니다. 모르는게 있으면 댓글 달아주세요. 

- 소스는 Git으로 공개할 예정입니다. ^^ 많은 지적 및 조언 부탁드립니다. 




저작자 표시
신고
Posted by beans9 AHM

아래 샘플코드 참조

핵심은 디렉티브에서 scope.$parent.함수 를 만들어서 사용하는것!


how  to call child directive function?


See the Pen NPJqOB by homin ahn (@beans9) on CodePen.


저작자 표시
신고
Posted by beans9 AHM
npm ERR! peerinvalid The package generator-karma does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer generator-angular@0.2.2 wants generator-karma@~0.2.0

npm ERR! System Windows_NT 6.2.9200
npm ERR! command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js"
 "install" "-g" "generator-angular"
npm ERR! cwd C:\Code\Resgrid\temp
npm ERR! node -v v0.8.22
npm ERR! npm -v 1.2.14
npm ERR! code EPEERINVALID
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     C:\Code\Resgrid\temp\npm-debug.log
npm ERR! not ok code 0

위와같이 에러가 날 경우 아래 명령어를 한번 실행시켜준 후 설치하면 이상없이 작동한다. 
>npm uninstall -g generator-karma && npm install -g generator-angular


저작자 표시
신고
Posted by beans9 AHM

오랜만에 Sourcetree를 실행시켰는데 실행이 안된다

재설치를 해봐도 마찬가지, 구글링 결과 아래 폴더를 삭제 후 다시 실행..

이상없이 동작한다. 대신 초기설정은 한번 해줘야 한다는거..


\Users\Administrator\AppData\Local\Atlassian\SourceTree.exe_Url_xxxxxxxx



저작자 표시
신고

'Git > TIP' 카테고리의 다른 글

Sourcetree 시작이 안될때  (0) 2015.03.07
Posted by beans9 AHM

다운로드 사이트 http://developer.android.com/index.html



다운로드 받은 후 설치 -> next.. next.. next.. next.. 기본설정으로 일단 설치.. 후 실행하니 바로 에러.. 64비트로 jdk설치


JDK 다운로드 사이트 : http://java.oracle.com



설치 후 환경변수에 JAVA_HOME 등록



다시 실행하면 정상동작..



다음 포스팅에서는 하이브리드앱을 만들기 위한 준비를 해보도록 한다. 




저작자 표시
신고

'Android' 카테고리의 다른 글

[android] android studio 설치  (0) 2015.02.27
Posted by beans9 AHM
아래와 같이 array를 filter할 경우 그 length를 가져오는 예제이다
filter한 내용을 새로 변수를 선언해서 넣어주는게 포인트이다. 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<div ng-app="myApp">
  <div ng-controller="MyCtrl">
      Filter: <input ng-model='filterExpr'>
      <button ng-click='items.push("car")'>Add sth to the list</button>
      <button ng-click='items.splice(items.length-1,1)'>minus sth from the list</button>
      <hr>
      <ul>
          <li ng-repeat='item in filtered = (items | filter:filterExpr) track by $index'>{{item}}</li>
      </ul>
      <hr>   
      Filtered list has {{filtered.length}} items
  </div>
</div>
 
<script type="text/javascript">
<!--
angular.module('myApp', [])
  .controller('MyCtrl'function ($scope) {
     $scope.items = ['foo''bar''foobar'];
});
//-->
</script>
cs


데모

See the Pen angularjs filter length by homin ahn (@beans9) on CodePen.



// 필터된 데이터 길이 구하기


저작자 표시
신고
Posted by beans9 AHM