1. 먼저 필요한 Maven을 설치합니다.

아래의 메이븐저장소에 들어가서 

mybatis, mybatis-spring, spring-jdbc, mariadb, hikaricp를 검색하여 maven을 pom.xml dependency에 추가합니다.

https://mvnrepository.com/

 

Maven Repository: Search/Browse/Explore

AWS Java SDK :: Regions Last Release on Oct 18, 2019

mvnrepository.com

예시)

<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
		<dependency>
			<groupId>org.mybatis</groupId>
			<artifactId>mybatis</artifactId>
			<version>3.5.2</version>
		</dependency>

		<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring -->
		<dependency>
			<groupId>org.mybatis</groupId>
			<artifactId>mybatis-spring</artifactId>
			<version>2.0.1</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-jdbc</artifactId>
			<version>4.3.4.RELEASE</version>
		</dependency>

		<!-- https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client -->
		<dependency>
			<groupId>org.mariadb.jdbc</groupId>
			<artifactId>mariadb-java-client</artifactId>
			<version>2.5.0</version>
		</dependency>

		<!-- https://mvnrepository.com/artifact/com.zaxxer/HikariCP -->
		<dependency>
			<groupId>com.zaxxer</groupId>
			<artifactId>HikariCP</artifactId>
			<version>3.4.0</version>
		</dependency>

 

2.  webapp/WEB-INF/spring/ 에 있는 root-context.xml에 들어갑니다.

Namespaces에 들어가여 아래와 같이 체크해주고 저장합니다.

 

3. 다시 root-context에서 Source에 들어가 아래와 같이 입력해줍니다.

	<bean id="hikariConfig" class="com.zaxxer.hikari.HikariConfig">
		<property name="driverClassName"
			value="org.mariadb.jdbc.Driver"></property>
		<property name="jdbcUrl"
			value="jdbc:mariadb://127.0.0.1:3306/spring?useSSL=false&amp;serverTimezone=Asia/Seoul"></property>
		<property name="username" value="DB계정입력"></property>
		<property name="password" value="DB비밀번호입력"></property>
	</bean>

	<bean id="dataSource" class="com.zaxxer.hikari.HikariDataSource"
		destroy-method="close">
		<constructor-arg ref="hikariConfig" />
	</bean> 

	<bean id="sqlSessionFactory"
		class="org.mybatis.spring.SqlSessionFactoryBean">
		<property name="dataSource" ref="dataSource"></property>
		<property name="mapperLocations"
			value="classpath:mappers/**/*.xml"></property>
	</bean>

	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">

		<property name="basePackage" value="net.test.test.dao" />
	</bean>

간단한 설명을하자면 먼저 아래의 xml 코드는 DB커넥션풀을 hikariCP를 사용하고 DB에 연결하겠다는 뜻입니다.

	<bean id="hikariConfig" class="com.zaxxer.hikari.HikariConfig">
		<property name="driverClassName"
			value="org.mariadb.jdbc.Driver"></property>
		<property name="jdbcUrl"
			value="jdbc:mariadb://127.0.0.1:3306/spring?useSSL=false&amp;serverTimezone=Asia/Seoul"></property>
		<property name="username" value="DB계정입력"></property>
		<property name="password" value="DB비밀번호입력"></property>
	</bean>

	<bean id="dataSource" class="com.zaxxer.hikari.HikariDataSource"
		destroy-method="close">
		<constructor-arg ref="hikariConfig" />
	</bean> 

아래의 xml코드는 sqlSession을 연결할 수 있게하며, 데이터베이스 쿼리를 갖고있는 mapper들을 연결시켜주겠다는 의미입니다.(아래에 작성되어있음.)

<bean id="sqlSessionFactory"
		class="org.mybatis.spring.SqlSessionFactoryBean">
		<property name="dataSource" ref="dataSource"></property>
		<property name="mapperLocations"
			value="classpath:mappers/**/*.xml"></property>
	</bean>

아래는 mapper에 작성되어있는 쿼리들을 불러오는 dao들을 스캔하는 의미입니다. value는 꼭 패키지에 맞춰 쓸 수 있도록 합니다.

<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">

		<property name="basePackage" value="net.test.test.dao" />
	</bean>

 

4. 아래와 같이 패키지와 controller 및 dao를 작성합니다.

임의로 작성한것입니다. 꼭 이렇게 안하셔도됩니다.

DAO파일은 인터페이스로 생성해야합니다.

 

5. 이제 쿼리를 작성할 mapper를 생성합니다. 

아래의 resources/ 폴더 밑에 mappers와 그 아래 xml 파일을 생성합니다.

xml파일에 아래와 같이입력합니다.

mapper의 namespace는 아까 작성한 TestDAO의 경로와 똑같이 해야합니다.

여기서 DB쿼리들을 작성합니다. DB접속이 잘 되었는지 확인만 하기위해 현재 시간을 나타내주는 쿼리를 작성해봅니다.

6. TestDAO를 열어 아래와 같이 TestMapper.xml에서 작성한 selectNow함수를 작성해줍니다.

그리고는 작성한 controller 에 들어갑니다.(현재 글에는 TestController입니다.)

아래와 같이 작성합니다.

MVC패턴을 이용하는 Spring에서는 아래와같이 controller에서 불러오면 안되는 것은 아니지만 패턴의 규칙이 있기때문에 controller에서 직접 불러오는 것을 추천드리지는 않지만, 테스트목적이라 여기서는 불러서 사용합니다.

 

이것을 실행하여 localhost:8080/test에 접속하면 db에서 불러온 현재 시간이 console창에  나타나는 것을 볼 수 있습니다.

1. 먼저 아래에 접속해 STS 3.9.X버전을 설치한다.

https://spring.io/tools3/sts/all

 

Spring Tool Suite™ 3 (STS 3) Download page

Use one of the links below to download an all-in-one distribution for your platform. Choose either a native installer or simple archive, they contain equivalent functionality

spring.io

그리고 최신버전 또는 옛날

버전을 설치한다.

2. 프로젝트 생성에서 MVC PROJECT를 설치한다.

3. 프로젝트의 pom.xml에 들어가 밑줄친 부분을 1.8버전, 4.3.x버전으로 변경한다

아래와 같이 변경

4. maven-compiler-plugin을 1.8버전으로 변경한다

아래와 같이 변경한다

 

전부 변경하였다면 저장해준다.

5. 프로젝트 우클릭 후 Properties를 클릭한다.

Project Facets에서 1.6으로 되어있는 Java버전을 1.8로 변경한다

Dynamic Web Module 또한 3.0으로 변경하여도 상관없으나 만약 변경한다면 프로젝트의 web.xml파일에 들어가서

web.xml 파일 상단에 web-app version="2.5" 버전을 web-app version="3.0"으로 같이 변경해준다.

6. Java Compiler 에 접속하여 버전을 1.8버전으로 변경해준다

만약 변경되어 있지 않거나 없다면 아래 사진의 파란색부분인 Java Build Path을 클릭한다.

Java Build Path에서 Add Library를 클릭해준다.

JRE System Library를 선택한다.

Installed JREs를 클릭한다.

Add를 클릭한다.

Standard VM을 선택한다.

Directory를 클릭하여 Java 1.8버전이 있는 폴더를 선택하여 Apply버튼을 눌러주어 1.8버전을 선택하고 다시 6번의 Proejct Facets에 들어가 1.8로 수정해주면 된다.

7. 프로젝트 우클릭 후 Update Project를 해준 뒤 실행해보면 잘 실행이된다.

 

참고로 pom.xml에 있는 servlet-api 버전이나, jsp, jstl 버전을 최신버전으로 변경해주어도 좋다

Python Slack :

2018/11/03 - [Develop/Python] - Python Slack WebHook (파이썬 슬랙 웹훅) 만들기

2018/11/03 - [Develop/Python] - Python Slack Bot (파이썬 슬랙 봇) - slackclient

2018/11/03 - [Develop/Python] - Python Slack Bot (파이썬 슬랙 봇) - slacker

2018/11/08 - [Develop/Python] - Python Slack Lunch Bot - 점심 알리미 봇

 

SpringBoot Slack :

2018/11/24 - [Develop/Spring Boot] - Spring boot Slack WebHook. 슬랙 웹훅(Java Slack WebHook)

 

 

Node.js 에서 슬랙 웹훅을 사용하는 방법이다.

1. 먼저 아래의 링크에서 슬랙에서 웹훅을 추가하는 방법을 보고온다.

2018/11/03 - [Develop/Python] - Python Slack WebHook (파이썬 슬랙 웹훅) 만들기

 

Python Slack WebHook (파이썬 슬랙 웹훅) 만들기

파이썬으로 슬랙에 메세지를 보낼 수 있는 방법 중 하나인 웹훅(webhook)을 사용하는 방법이다. - Spring boot Webhook (Java Webhook) 2018/11/24 - [Develop/Spring Boot] - Spring boot Slack WebHook. 슬랙 웹..

pangyeon.tistory.com

2. https://api.slack.com/community 슬랙 api 사이트에서 Node.js에서  WebHooks을 사용할 수 있는 api를 찾아본다.

 

이 글에서 사용하는 api는 CoffeScript에 있는 slack-node-sdk 이다.

 

3. slack-node-sdk 에 이미 사용방법들을 상세히 설명되어 있다.

 

npm install slack-node --save

를 입력하여 모듈을 설치한다.

 

다음 .js파일을 생성하거나 이미 사용하고 있는 프로젝트에 아래와 같은 코드를 입력하고 실행한다.

 

//slack.js
var Slack = require('slack-node');

webhookUri = "webhookUri를 적는란";

slack = new Slack();
slack.setWebhook(webhookUri);

slack.webhook({
    channel: "#general",	// 현 슬랙의 채널
    username: "웹훅", // 슬랙에서 보여질 웹훅 이름
    text: "테스트"	//텍스트
}, function (err, response) {
    console.log(response);
});

node slack.js 으로 실행하면 아래와 같이 메세지가 슬랙에 전송된다.

 

 

참고 : https://api.slack.com/community

 

Slack Platform: Community | Slack

Slack developer tools Widely-used open source libraries With hundreds of open source libraries, plugins, and apps covering more than a dozen languages and frameworks, it's tough to know where to begin. Here are some popular libraries supporting a wide rang

api.slack.com

+ Recent posts