카테고리 없음

230206

Berylly 2023. 2. 6. 17:11

T. 김동식

 

표현언어에서 같은 속성에 대한 우선순위

page>request>session>application

 

hashmap 출력하기

<jsp:useBean id="hash" class="java.util.HashMap"></jsp:useBean>
<% hash.put("a", "이것을 hash맵 테스트입니다."); %>
<h1>HashMap test: ${hash.a}</h1>

 

 

JSTL jsp standard tag library

c 코어 : 변수 지원, 흐름 제어, 반복문 처리, URL 처리
x xml : XML 코어, 흐름 제어, XML 변환
fn 함수 : 컬렉션 처리, 문자열 처리

sql 데이터베이스 : SQL

fmt 국제화 : 지역, 메시지 형식, 숫자 및 날짜 형식 

 

 c:set 변수설정
 c:remove 변수제거
 c:if(if)
 c:choose - c:when(elseif) c:otherwise(else)
 c:forEach(for문) - var, items, begin, end, step, varStatus

 

https://tomcat.apache.org/download-taglibs.cgi

 

Apache Tomcat® - Apache Taglibs Downloads

Welcome to the Apache Taglibs download page. This page provides download links for obtaining the latest version of the Apache Standard Taglib, as well as links to the archives of older releases. You must verify the integrity of the downloaded files. We pro

tomcat.apache.org

 

<c:set var="str" value="박상희" scope="page"></c:set>
<c:remove var="str"></c:remove>
<c:set var="num" value="5" scope="page"></c:set>
<c:if test="${num>1}"><p>num은 1보다 크다</p></c:if>
<c:set var="num" value="5" scope="page"></c:set>
<c:choose>
	<c:when test="${num<10}"><p>num은 10보다 작다</p></c:when>
	<c:otherwise>num은 10보다 크다</c:otherwise>
</c:choose
<% 
request.setCharacterEncoding("utf-8"); 
List list = new ArrayList();
list.add("박");
list.add("상");
list.add("희");
%>
<c:set var="list" value="<%=list %>"></c:set>
<c:forEach var="i" begin="1" end="3">
		<p>${i+1}번째 출력) list는 ${list}이다.</p>
</c:forEach>

 

 

 

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <Gallery
        android:id="@+id/gallery1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:spacing="5dp" />

    <ImageView
        android:id="@+id/ivPoster"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:padding="20dp" />

</LinearLayout>
package com.himedia.project4_2.hb_ch11.slide;

import android.content.Context;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Gallery;
import android.widget.ImageView;

import androidx.appcompat.app.AppCompatActivity;

import com.himedia.project4_2.R;

@SuppressWarnings("deprecation")
public class slide extends AppCompatActivity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.hb_ch11_slide);
        setTitle("갤러리 영화 포스터");

        //BaseAdapter를 extends한 함수 MyGalleryAdapter 객체를 만들어 Gallery에 set한다.
        MyGalleryAdapter galAdapter = new MyGalleryAdapter(this);
        Gallery gallery = (Gallery) findViewById(R.id.gallery1);
        gallery.setAdapter(galAdapter);
    }

    public class MyGalleryAdapter extends BaseAdapter {

        Context context;
        Integer[] posterID = { R.drawable.mov11, R.drawable.mov12,
                R.drawable.mov13, R.drawable.mov14, R.drawable.mov15,
                R.drawable.mov16, R.drawable.mov17, R.drawable.mov18,
                R.drawable.mov19, R.drawable.mov20 };

        public MyGalleryAdapter(Context c) {
            context = c;
        }
        public int getCount() {
            return posterID.length;
        }
        public Object getItem(int arg0) {
            return null;
        }
        public long getItemId(int position) {
            return 0;
        }

        public View getView(int position, View convertView, ViewGroup parent) {
            ImageView imageview = new ImageView(context);
            imageview.setLayoutParams(new Gallery.LayoutParams(200, 300));
            imageview.setScaleType(ImageView.ScaleType.FIT_CENTER);
            imageview.setPadding(5, 5, 5, 5);
            imageview.setImageResource(posterID[position]);

            final int pos = position;
            //imageview를 클릭하면
            imageview.setOnTouchListener(new View.OnTouchListener() {
                public boolean onTouch(View v, MotionEvent event) {
                    ImageView ivPoster = (ImageView) findViewById(R.id.ivPoster);
                    ivPoster.setScaleType(ImageView.ScaleType.FIT_CENTER);
                    ivPoster.setImageResource(posterID[pos]);//ImageView에 리소스설정
                    return false;
                }
            });

            return imageview;
        }
    }
}

 

 

 

spinner(dropbox)

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <Spinner
        android:id="@+id/spinner1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

</LinearLayout>

package com.himedia.project4_2.hb_ch11.spinner;

import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.Spinner;

import androidx.appcompat.app.AppCompatActivity;

import com.himedia.project4_2.R;

public class spinner extends AppCompatActivity  {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.hb_ch11_spinner);
        setTitle("스피너 테스트");

        final String[] movie = { "아바타", "힘을내요 미스터리", "포드vs페라리","쥬만지", "대부",
                "국가대표", "토이스토리3", "마당을 나온 암탉", "죽은 시인의 사회", "서유기" };

        Spinner spinner = (Spinner) findViewById(R.id.spinner1);

        ArrayAdapter<String> adapter;
        adapter = new ArrayAdapter<String>(this,
                android.R.layout.simple_spinner_item, movie);
        spinner.setAdapter(adapter);

    }
}

 

 

인공지능

WISDOM 지혜(예측, 인사이트)

KNOWLEDGE 지식(이해)

IMFORMATION 가공

DATA 객관적 사식, 수, 문자

 

AI ⊃ 머신러닝(기계학습) ⊃ 딥러닝

약인공지능 

강인공지능

신경망 neural network

 

통계 (모수통계학 & 비모수통계학)

 - 기초통계: 기술통계, 추론통계, 상관/인과(원인과 결과)

 - 고급통계: 모수로 추정하는 것이 아닌 상태를 봄

   지도학습&비지도학습: 답의 유무에 따라 우선 데이터분류, 답(data), 관측치(label)

 

데이터마이닝

데이터를 정제해 의미있는 정보를 캐내는, 방법론

 

 

머신 러닝의 세 가지 종류
지도 학습(supervised learning)
 - 개별 클래스 레이블이 있는 지도 학습을 분류(classification)라고 함
 - 연속적인 값을 출력하는 회귀(regression)
 - 이진 분류(binary classification) 작업 : true & false, 
    - 음성 클래스(negative class)
    - 양성 클래스(positive class)
    - 새로운 데이터의 x1, x2 값이 주어지면 두 개의 범주 중 하나로 분류
 - 다중 분류(multiclass classification)
 - 회귀
   - 예측 변수(predictor variable)(또는 설명 변수(explanatory variable))와 
     반응 변수(response variable)(또는 결과(outcome))가 주어졌을때 두변수 사이의 관계를 찾음
   - 예측 변수를 보통 “특성(feature)” 반응 변수를 “타깃(target)”이라고 부름
   - 선형 회귀(linear regression)
      - x와 타깃 y가 주어지면 데이터 포인트와 직선 사이 거리가 최소가 되는 직선을 그을 수 있음
      - 일반적으로 평균 제곱 거리를 사용
      - 평균 제곱 거리가 최소가 될때까지 직선의 기울기와 절편(intercept)을 바꿔가며 출력 값을 예측 비지도 학습(unsupervised learning)
강화 학습(reinforcement learning)