본문 바로가기

Programming177

maven에 custom jar를 집어넣어 보자. IntelliJ 환경에서 build를 하면 별로 고민을 안해도 되지만 리눅스 환경에서 maven build를 해야되는 경우 custom jar 파일을 pom.xml 파일에 추가시켜 줘야 maven build시 인식이 된다. 대략적으로 설명을 하자면, 개인 로컬 repository를 만들고 해당 repository를 pom.xml에 등록한다.그 후 dependency를 추가해 준다.이렇게 하면 custom jar 파일을 pom.xml에서 인식할 수 있고 쉽게 maven build를 실행할 수 있다. 개인 로컬 repository는 아래처럼 pom.xml에 추가하자. localrepository file://${basedir}/repo url 항목을 보면 jar 라이브러리 파일 경로를 입력하는 것을 확인해 .. 2018. 3. 6.
[5강] 클래스와 객체 CLASS, FIELD, METHOD scala에서의 class, field, method는 JAVA와 상당히 유사하다. 일단 scala에서는 아래와 같이 class를 정의 할 수가 있다. class Test { var variable = 0 } 해당 클래스를 객체로 만들고 싶다면 아래와 같이 new로 선언해 주면 된다. val test1 = new Test() 또한 Test class 내의 변수 무결성을 보장해 주기 위해 private로 선언해 줄 수도 있다. class Test { private var variable = 0 } scala에서는 기본적으로 변수 선언을 하게 되면 public이며, 따로 public 키워드를 사용하고 있지는 않다. 이제 변수를 파라미터로 받아서 variable에 더해주는.. 2018. 3. 3.
IntelliJ에서 scala 사용해보기 우선 mac 기준으로 IntelliJ와 JDK는 깔려 있다는 가정하에 IntelliJ에서 IntelliJ IDEA > Plugins에서 scala를 검색해보자. 위의 그림과 같이 SBT와 Scala가 검색이 되는데 이 두 개의 플러그인을 모두 설치하자. 설치한 후에는 IntelliJ 리스타트~ 하기 전에 scala sdk부터 설치를 하자. 아래의 링크로 들어가서 scala sdk를 설치하자. https://www.scala-lang.org/download/ 나 같은 경우에는 Mac OS 버전인 scala-2.12.4tgz을 다운 받았다. 적절한 폴더에 압축을 풀어주자. (나 같은 경우에는 JAVA JDK와 비슷한 위치에 압축을 풀음.) 기왕이면 SCALA_HOME과 PATH도 ~./bash_profile.. 2018. 2. 23.
[Python] Ipython 노트북 설치하기 IPython??기존의 python보다 좀더 인터프리터가 쉽게 나타나 있는 형태라고 보면 될 것 같다.python을 웹에서 코딩하고 작업할 수는 없을까라는 요구에 의해 나오게 된 거라도 봐도 될 것 같다. 간단히 어떻게 설치하고 사용하는지 살펴보자. 우선 ipython을 설치한다.참고로 ipython은 python 버전 2.7 또는 3.3 이상을 요구한다. $> pip install ipython 아래 라이브러리는 Ipython 사용에 있어 dependencies를 가지는 라이브러리들이기 때문에 함께 설치한다.- jinja2, needed for the notebook- sphinx, needed for nbconvert- pyzmq, needed for IPython's parallel computin.. 2017. 11. 21.
[Flask] Flask에서 ajax 사용하기 Flask 웹 페이지 화면에서 데이터가 갱신 되었을 때, 해당된 영역만 갱신을 하고 싶었다. 웹은 거의 초짜 수준이라.. 이것 저것 찾아 봤다. 맨 처음에 쓴 방식은 html template를 새롭게 하나 더 만들고, 새롭게 만든 html template에 기존 html 콘텐츠를 추가하기 아래와 같은 방식이다.{% block %} 원래 html 영역 {% end block %} 새롭게 만든 html 영역 하지만 이 방법 역시 기존 html 영역을 나타나게 하려면 python 코드에서 정보를 다 입력해서 넘겨주어야만 했다.return render_template('새로운 html', 기존 html 정보, 새로운 html 정보); 결국엔 전체 page 갱신과 똑같은 결과라서 결국 이 방법은 포기! 두 번째 .. 2017. 11. 20.
[SQLALCHEMY] session 관리 SQLAlchemy에서는 정말 편리하게도 많은 기능들을 제공해 주고 있다. 그 중 하나로 pool 관리도 해주는데 대부분 아래와 같이 사용할 것이다.from sqlalchemy import create_engine from sqlalchemy.orm import scoped_session, sessionmaker engine = create_engine('mysql 주소', convert_unicode=False, pool_size=20, pool_recycle=500, max_overflow=20)session = scoped_session(sessionmaker(autocommit=False, autoflush=False, bind=engine)) 간략하게 create_engine의 parameter.. 2017. 11. 15.
[INTELLIJ] Jar 파일 만들기 IntelliJ에서 maven 빌드를 하려고 하는데, 관련 메뉴를 도무지 찾지 못했다. 예전 eclipse 같은 경우는 maven install 이라고 따로 팝업 메뉴가 존재했었는데, 그런 것도 없고 그냥 build를 하면 jar 파일 생성은 안되고.. 찾아본 결과 Build artifacts를 하면 된다는 글을 발견.. 실행하려는 찰나.. 어라??? 메뉴가 enable 설정이 되어 있지 않다!!또 열씸히 구글링...아하.. artifacts를 빌드하려면 artifacts를 만들어 주어야 한다..artifacts를 만들기 전에.. 도대체 artifacts가 무엇인지부터 찾아봤다.일반적으로 소프트웨어에서의 artifacts는 개발 프로세스에 의해 생성된 무언가를 나타낸다고 한다. 즉 실행파일이나 중간 산출.. 2017. 11. 13.
[Python] SqlAlchemy relation 설정하기 실제 DB에 설정되어 있는 관계들을 SqlAlchemy의 ORM에서 명시적으로 선언해 줌으로써 편하게 object 형태로 사용할 수가 있다.혹시 sqlAlchemy에 대해 잘 모르겠다.. 하시는 분들은 아래의 링크를 먼저 보고 오면 도움이 될 수 있을 것 같다.http://yujuwon.tistory.com/entry/SQLAlchemy-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0RDB에 USER_TB, ADDRESS_TB란 이름의 테이블이 생성되어 있다고 가정하면 아래와 같이 실제 DB 테이블에 매핑할 수 있는 class들을 선언할 수 있다.from sqlalchemy import Column, Integer, String, DateTime, ForeignKeyfrom databa.. 2017. 9. 1.
[Python] twitter api 사용하기 Twitter api를 사용하기 위해서는 oAuth 인증을 해야 한다. 그러기 위해서는 twitter에 가입해야 하고.... twitter 개발자 센터 가서 app을 하나 만들어야 하고.... 생각보다 절차가 복잡하다.. 이제부터 하나하나씩 살펴보기로 한다. 우선 twitter에 다들 가입되어 있다는 가정하에!! twitter 개발자 센터로 가서 앱을 하나 만들자. (https://dev.twitter.com/) 추가 : twitter 사이트가 개편됐다.... https://apps.twitter.com/ 로 가서 앱을 만들자.Myapps 버튼을 누르면 내가 만든 app 목록을 보거나 새롭게 app을 만들 수가 있다. 물론 twitter id로 login을 해야 한다. My apps 버튼을 누르고 앱을 .. 2017. 8. 23.