You need to enable JavaScript to run this app.
메밀묵 Github 블로그
로그인
회원가입
Programming 목록
Tag : Programming, JavaScript
11, 2022-02-06
3.
Ajax 데이터 전송 예제 Jquery Json 전자정부 표준프레임워크 컨트롤러
전자정부 프레임워크에서 ajax를 이용 json 객체를 전송하는 예제입니다 1. 자바스크립트에서 json 객체를 ajax 전송 2. 컨트롤러에서 json을 받아 로직 처리 후 json 리턴 3. 자바스크립트에서 json 받아서 html에 출력 JavaScript : JavaScript를 사용하여 json객체를 전송 1. ajax.jsp 생성 2. jquery 임포트 <script src="js/jquery-2.1.4.js"></script> 3. user객체에 key, value쌍 등록 user.key = value; 4. user를 json형태로 스트링화 var jsonString = JSON.stringify(user); 5. ajax로 url,type,data,success,error 작성 - url은 ajax명령을 처리할 컨트롤러 맵핑 - type은 post - data에는 jsonString을 request에 담기위해 "name" : value형태로 저장 - success에는 결과값을 처리할 내용 작성 result는 컨트롤러가 return하는 값 (String 리턴필요) - error에는 에러시 내용 작성 <script> var user = new Object(); //컨트롤러로 전송할 객체 user.name = "이름"; user.age = "27"; var obj = new Object(); //컨트롤러의 리턴값(result)을 저장할 객체 $('#ajaxButton').click(function(){ var jsonString = JSON.stringify(user); console.log(jsonString); $.ajax({ url:'./ajaxProcess.do', //request 보낼 서버의 경로 type:'post', // 메소드(get, post, put 등) data: {"jsonString":jsonString}, //보낼 데이터 success: function(result) { //서버로부터 정상적으로 응답이 왔을 때 실행 alert("success! \n"+result); //result를 obj객체로 파싱하여 사용 obj = jQuery.parseJSON(result); console.log(obj.name); console.log(obj.age); console.log(obj.gender); }, error: function(err) { //서버로부터 응답이 정상적으로 처리되지 못햇을 때 실행 alert("error! : "+err); } }); }); </script> Java : Controller에서 json 객체를 전달받아 로직처리 후 ajax로 리턴 1. @RequestMapping에 url 맵핑, 한글 인코딩 문제 해결을 위해 produces="text/html; charset=utf-8" 추가 2. jsonResult를 리턴하기위해 @ResponseBody 추가 3. jsonString을 받아오기 위해 인자에 HttpServletRequest request추가 4. request 사용해서 jsonString에 저장 5. jsonString.replaceAll(); 사용하여 쌍따옴표 복구 6. JSONParser, JSONObject 사용하여 jsonString을 json객체로 변환 (google JSON-simple 클래스 사용 maven) 7. json.put(), json.get()메서드 사용하여 데이터 로직 처리 8. json.toString()사용하여 json객체를 jsonResult 스트링으로 변환 9. jsonResult를 ajax로 리턴 @RequestMapping(value = "/ajaxProcess.do", produces="text/html; charset=utf-8") //인코딩 문제 해결 @ResponseBody //리턴하기 위해 추가 public String ajaxProcess(HttpServletRequest request, HttpServletResponse response, Model model) throws Exception { //request를 사용하여 jsonString 쌍따옴표 복구 후 저장 String jsonString = request.getParameter("jsonString"); jsonString = jsonString.replaceAll("&quot;", "\""); //쌍따옴표 복구 System.out.println("Controller > jsonString : "+jsonString); //자바콘솔에 스트링 출력 //jsonParser 사용해서 json 객체로 파싱 JSONParser parser = new JSONParser(); JSONObject json = (JSONObject) parser.parse(jsonString); //json객체를 사용해서 필요한 로직 처리 json.put("gender", "남자"); //json객체를 jsonResult 스트링으로 변경 후 ajax의 result로 리턴 String jsonResult = json.toString(); return jsonResult; } JavaScript : Javascript에서 Json 객체를 전송받아 html에 표현 1. result를 obj 객체로 변환 obj = jQuery.parseJSON(result); 2. obj 사용 하여 콘솔에 출력 console.log(obj.name); var obj = new Object(); ... $.ajax({ ... success: function(result) { //서버로부터 정상적으로 응답이 왔을 때 실행 alert("success! : "+result); //result를 obj객체로 파싱하여 사용 obj = jQuery.parseJSON(result); console.log(obj.name); console.log(obj.age); console.log(obj.gender); },
Tag : Programming, Android
14, 2022-02-06
2.
구글 AdMob을 활용해 안드로이드 어플에 배너광고 추가하기
안드로이드 앱(어플)을 개발하시고 플레이스토어에 출시하고 나면 어플에 광고를 추가할 수 있습니다. 광고는 배너, 전면, 리워드, 네이티브 고급광고 총 4가지 종류가 있습니다. 배너광고 : 어플화면이 일부분을 차지하여 배너광고로 사용 전면광고 : 특정행위를 하면 전면에 광고가 나타나게 함 리워드 : 일부 앱에서 영상을 보면 아이템이나 캐쉬를 주는 광고 네이티브 고급 광고 : 앱 디자인과 어울리게 맞춤설정을 해주는 광고 오늘은 이중에서 배너광고를 추가하는 방법에 대해서 설명하려고 합니다. 앱을 추가하지 않으신분이라면 아래 포스팅을 참고하세요 (업로드 준비중입니다) https://apps.admob.com/v2/apps/6879863572/adunits/list 먼저 위의 링크로 들어가 광고단위 추가 버튼을 클릭합니다. 그럼 위 사진처럼 앱ID와 광고단위ID가 만들어집니다. 광고 구현 시 위의 문자열이 쓰이기때문에 기록해두시거나 보관하시면됩니다. 그럼 이제 바로 안드로이드 스튜디오나 이클립스로 이동합니다. 광고를 추가하기 앞서 광고와 관련된 SDK를 프로젝트에 추가해야합니다. 프로젝트의 build.gradle과 앱의 build.gradle에 sdk에 대한 repositories와 dependencies를 추가해줍니다 1. 프로젝트의 build.gradle에 google()을 추가 allprojects { repositories { google() } } 2. 어플의 build.gradle에 dependencies 추가 dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'androidx.appcompat:appcompat:1.0.2' implementation 'com.google.android.gms:play-services-ads:19.2.0' } 3. AndroidManifest.xml에 AdMob 앱ID 추가 <manifest> <application> <!-- Sample AdMob App ID: ca-app-pub-3940256099942544~3347511713 --> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/> //자신의앱ID추가 </application> </manifest> 이제 본격적으로 어플에 AdView를 추가해보겠습니다. 1. 레이아웃에 AdView를 추가 # main_activity.xml <com.google.android.gms.ads.AdView xmlns:ads="http://schemas.android.com/apk/res-auto" android:id="@+id/adView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_alignParentBottom="true" ads:adSize="BANNER" ads:adUnitId="ca-app-pub-3940256099942544/6300978111"> </com.google.android.gms.ads.AdView> 여기서 들어있는 광고단위ID는 테스트ID이기 때문에 본인것으로 변경하시면 됩니다. ads:adUnitID="본인의 광고단위ID"> </com.google.android.gms.ads.AdView> 1-1. 위의 방식 또는 프로그래매틱 방식으로도 Adview를 추가할 수 있습니다. AdView adView = new AdView(this); //새로운 Adview를 생성 adView.setAdSize(AdSize.BANNER); //AdView의 사이즈를 지정 adView.setAdUnitId("ca-app-pub-3940256099942544/6300978111"); //AdView에 광고단위ID를 지정 // TODO: Add adView to your view hierarchy. 2. 광고를 넣고자 하는 Activity에 로드하기 레이아웃에 AdView를 추가하였다면 AdView 클래스의 loadAd() 메서드를 사용해서 광고를 로드할 수 있어요 단일 광고 요청에 대한 런타임정보가 있는 AdRequest 매개변수가 사용됩니다. 2-1)MainActivity의 onCreate()에서 광고를 로드하는 방법을 보여주는 예 MainActivity.java package ... import ... import com.google.android.gms.ads.AdRequest; import com.google.android.gms.ads.AdView; public class MainActivity extends AppCompatActivity { private AdView mAdView; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); MobileAds.initialize(this, new OnInitializationCompleteListener() { @Override public void onInitializationComplete(InitializationStatus initializationStatus) { } }); mAdView = findViewById(R.id.adView); //layout에서 adView에 대한 ID를 가져옵니다. AdRequest adRequest = new AdRequest.Builder().build(); //AdRequest빌더를 가져옵니다. mAdView.loadAd(adRequest);//adView에 대해 광고를 로드해줍니다. } } 2-2 다른 함수로 추가하여 광고로드를 보여주는 예 package ... import ... import com.google.android.gms.ads.AdRequest; import com.google.android.gms.ads.AdView; public class MainActivity extends AppCompatActivity { private AdView mAdView; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); MobileAds.initialize(this, new OnInitializationCompleteListener() { @Override public void onInitializationComplete(InitializationStatus initializationStatus) { } }); onBannerAdsAdd(); } private void onBannerAdsAdd() { private AdView mAdView; mAdView = findViewById(R.id.adView); AdRequest adRequest = new AdRequest.Builder().build(); mAdView.loadAd(adRequest); } } 여기까지 하셨으면 배너광고 추가 완료입니다! 궁금한점이나 도움이 필요한 사항은 댓글에 남겨주시면 답변해드립니다 ^^
Tag : Programming, GitHub
38, 2022-02-06
1.
GitHub 기본 사용 방법
GitHub 기본 사용 방법 새로운 저장소를 만들었을 때 echo "# make README.md" >> README.md git init git add README.md git commit -m "first commit" git branch -M main git remote add origin ${github repository url}.git git push -u origin main 기존에 생성한 저장소가 있을 때 git remote add origin ${github repository url}.git git branch -M main git push -u origin main 현재 연결되어있는 저장소를 확인할 때 git remote -v
1
MemilMook
Memilmook Studio
https://github.com/memilmook
IT관련 지식들을 모아놓는 블로그.
Home
1
IT&Computer
1
Programming
3
Android
1
GitHub
1
JavaScript
1
날아라 메밀묵
File2Hex
딥러닝 예측 로또번호